遇到的问题:hibetnate中用Example查询时,生成sql语句时会自动增加this_ where (this_.age=?);User对象的属定义:
         private int id;
private String name;
private Date date;
private int age;User.hbm.xml定义
<class name="com.ing.springhibernate.model.User" table="huser">
  <id name="id" column="id">
   <generator class="identity">
   </generator>
  </id>
  <property name="name" type="java.lang.String"></property>
  <property name="age" type="int"></property>
  <property name="date" type="java.util.Date"></property>
 </class>getUserListExample的定义:
  public List getUserListExample(final Object object) {
List l =
(List) this
.getHibernateTemplate()
.execute(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException {

return session
.createCriteria(object.getClass())
.add(Example.create(object))
.list();
}
});
return l;
}调用语句:user=new User();
user.setName("xiaozhang2");
udh.getUserListExample(user);操作过程:实例化一个User对象,给getUserListExample(final Object object);后台打印的sql
Hibernate: select this_.id as id0_0_, this_.name as name0_0_, this_.age as age0_0_, this_.date as date0_0_ from huser this_ where (this_.name=? and this_.age=?)
当修改User的age属性的类型为Integer时,此错误解决但不知道具体原因,请告诉原因?
修改后的配置如下:
user属性:
        private int id;
private String name;
private Date date;
private java.lang.Integer age;
user.hbm.xml
 <class name="com.ing.springhibernate.model.User" table="huser">
  <id name="id" column="id">
   <generator class="identity">
   </generator>
  </id>
  <property name="name" type="java.lang.String"></property>
  <property name="age" type="java.lang.Integer"></property>
  <property name="date" type="java.util.Date"></property>
  </class>