hibernate查询返回值



//操作的是多张表,返回的数据也来源于多个表的字段;
            //String sql = “select A.id ID, A.name NAME, B.salary SALARY from employee A , Salary B where.......”;
            //Query query =getSession().createSQLQuery(sql)
            //        .setResultTransformer(Transformers.aliasToBean(ReturnEmployee.class));
            //由于返回的ID, NAME, SALARY 非一个和表对应的一个BEAN,所以自己需要建立一个ReturnEmployee的BEAN,属性包括ID, NAME, SALARY

            //List cats = sess.createSQLQuery(" select {cat.*}, {kitten.*} from cats cat, cats kitten where kitten.mother = cat.id " )
            //.addEntity( " cat " , Cat. class ).addJoin( " kitten " , " cat.kittens " ).list();

            //List cats = sess.createSQLQuery( " select {cat.*} from cats cat " ).addEntity( " cat " , Cat. class ).list();
            //List cats = sess.createSQLQuery( " select * from cats " ).addEntity(Cat. class ).list();

            //返回一个Map对象,也就是说在在list里包含多个Map
            //返回一个map,KEY:为DB中名称一致(大小写一致)遍历list时就可以
            //Query query = session.createSQLQuery("select id,name from Tree t where pid in (select id from Tree) ").setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
            //Map map = (Map)list.get[i];

            //创建sql语句
            //String sql = "SELECT users.name,usersinfo.* FROM users,usersinfo WHERE users.id = usersinfo.userid";
            //获得SQLQuery对象
            //SQLQuery query = session.createSQLQuery(sql);
            //设定结果结果集中的每个对象为Map类型
            //query.setResultTransformer(CriteriaSpecification.ALIAS_TO_ENTITY_MAP);
            //执行查询
            //List list = query.list();

            //还可以用作函数方面的
            //返回一个map,KEY:为DB中名称一致(大小写一致)
            //Query query = session.createSQLQuery("select sum(id) SUMID from Tree t where pid in (select id from Tree).addScalar("SUMID",Hibernate.INTEGER) //转换类型,按DB中的type转
            //        .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
            //直接就map.get("SUMID")可以取值了

            //Double max = (Double) sess.createSQLQuery( " select max(cat.weight) as maxWeight from cats cat " )
            //        .addScalar( " maxWeight " , Hibernate.DOUBLE).uniqueResult();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值