hql对象封装到实体类的注意事项

很多时候我们直接将hql查询到的结果封装到POJO中,这样省去了遍历List赋值到其他List的操作,有时也能解决一些特殊问题


发现了如下几个容易出现的错误

  1. POJO的对象一定和数据库中的字段名字对象,并且必须有全参构造方法。hql语句中查询了几个,POJO就需要有几个对应的对象。

  2. 第二个问题是类型必须要对应,在用到Date类型的时候,注意引用的包为utils.Date 而不是 sql.Date,还有int的不要写成Integer

  3. 还有在数据库的字段为float类型,对象的实体类的变量应写成double类型。我是用SQL Server出现了这个问题,不知道其他数据库是怎样。

目前主要就是这些问题,分享我的一个hql语句。用于参考

`
String queryString = "select new cn.**.**.***.IndexStatistics(q.cdate,q.tem) from QuTthh"+year+" q where q.station=200 and q.state=0 and q.cdate>=:str2 and q.cdate<=:str";

你可能感兴趣的:(SSH,框架,Java,Web)