首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQLQuery实施原生SQL得到VO集合

2012-09-14 
SQLQuery执行原生SQL得到VO集合在查询多个表时,而输出的内容又是零散来自于不同的表,用sql语句的情况下还

SQLQuery执行原生SQL得到VO集合

在查询多个表时,而输出的内容又是零散来自于不同的表,用sql语句的情况下还要返回的是一个VO封装的对象。

表:

CREATE TABLE tab1(     id int primary key,     name varchar,);CREATE TABLE tab2(     id int primary key,     money BigDecimal,     descri varchar,);

?VO:

public class TestVo{     private String name;     private String descript;     private String money ;  ......getter....setter}

?

SQL: 别名要对应TestVo的属性名,还要getter,setter方法

SELECT  t1.name name, t2.descri descript , t2.money  money FROM tab1 t1 , tab2 t2WHERE t1.id = t2.id

? SQLQuery:

SQLQuery q = this.getSession().createSQLQuery(sql)        .addScalar("name",Hibernate.STRING)        .addScalar("descript",Hibernate.STRING)        .addScalar("money ",Hibernate.BIG_DECIMAL);List<TestVo> tvs = (List<TestVo>)q        .setResultTransformer(Transformers.aliasToBean(TestVo.class))        .list();

??http://android1.blogcn.com/

热点排行