MyBatis小問題-Mapper中錯誤No constructor found...

來源:互聯網
上載者:User

標籤:lang   setname   沒有   override   運行   tle   return   建構函式   mapper   

  前兩天又被公司叫去修改其他產品的一些問題了,沒有看java相關的,今天周六,看了看MyBatis東西。

  就是簡單的在MySql中建了個users表,很簡單,包含id,name,age,寫了個bean。如下:(注,由於初學java,可能很多名詞用的並不是特別準確,大概理解一下就行了,待學成之後,再行修改。所謂大行不顧細謹,大禮不拘小節,O(∩_∩)O)

  

package com.tszhao.dao;

public class User {

private int id;

private String name;
private int age;

public User(int id, String name, int age) {
super();
this.id = id;
this.name = name;
this.age = age;
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", age=" + age + "]";
}
}

  在JUnit中寫了一個測試程式,用來查詢。

@Testpublic void testSelect() {
SqlSessionFactory factory = MyBatisUtils.getFactory();
SqlSession openSession = factory.openSession();
UserMapper mapper = openSession.getMapper(UserMapper.class);
User selectUser = mapper.selectUser(1);
System.out.println(selectUser);
}

  結果,運行報錯。。。

org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: org.apache.ibatis.executor.ExecutorException: No constructor found in com.tszhao.dao.User matching [java.lang.Integer, java.lang.String, java.lang.Integer]
### The error may exist in com/tszhao/mapper/UserMapper.java (best guess)
### The error may involve com.tszhao.mapper.UserMapper.selectUser
### The error occurred while handling results
### SQL: select * from users where id=?
### Cause: org.apache.ibatis.executor.ExecutorException: No constructor found in com.tszhao.dao.User matching [java.lang.Integer, java.lang.String, java.lang.Integer]
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
...

  看樣子,應該跟建構函式相關。找不到與User相關的建構函式。試著在User中增加了一個預設的建構函式,通過。。。

  可能問題都不值得一提,但是,特此記錄一下學習曆程,也是一個很有意思的事。。。

MyBatis小問題-Mapper中錯誤No constructor found...

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.