今天在执行session.createSQLQuery(SQL)后(多表链接查询,选取部分字段),把结果集直接强转到自定义的实体类上,debug的时候发现全是object对象,可是里面有值,应该是没有映射上的问题,query映射不上自定义的实体类。html
解决方法:java
在后面添加一个参数session
setResultTransformer(new AliasToBeanResultTransformer(OrdersModel.class))url
指定了返回结果的类型为orderModelspa
完整语句为:hibernate
Query query=session.createSQLQuery(SQL).setFirstResult(begin).setMaxResults(end) .setResultTransformer(new AliasToBeanResultTransformer(OrdersModel.class));
还有一种方法:code
在createSQLQuery(SQL)后面添加addEntity(OrderModel.class),指定返回的实体类型orm