hibernate在使用sql查询query自动转化成model类型数据,query.addEntity

 

hibernate使用自动的hql查询或者其封装的查询方法都能字段转化成对象

而如果在hibernate中使用sql时大多返回为Object[]对象

那么如何将object[]转换成model呢,答案就是

addEntity(Class cls);

 

实列

    public HqxgModel getMaxMinHqxg(){
        StringBuilder sb = new StringBuilder();
        sb.append("select  ");
        sb.append("'0' idStr,  ");
        sb.append("'' date,  ");
        sb.append("'0' hqsyl1End,'0' hqsyl1Start,  ");
        sb.append("'0' hqsyl2End,'0' hqsyl2Start,  ");
        sb.append("'' hqxgTitle,'' userid,  ");
        sb.append("'' industryCode,'' province,  ");
        sb.append("'' xxzrlxM,'' xxzrlxT,  ");
        //不保留小数点的
        sb.append("max(CEILING(h.hsl))hqhslEnd,min(FLOOR(h.hsl))hqhslStart, ");
        sb.append("max(CEILING(h.cjl))hqcjslEnd,min(FLOOR(h.cjl))hqcjslStart, ");
        sb.append("max(CEILING(h.cje))hqcjjeEnd,min(FLOOR(h.cje))hqcjjeStart, ");
        sb.append("max(CEILING(h.zdf))hqzdfEnd,min(FLOOR(h.zdf))hqzdfStart, ");
        sb.append("max(CEILING(h.zxj))hqzrspEnd,min(FLOOR(h.zxj))hqzrspStart, ");
        sb.append("max(CEILING(h.syl))sylEnd,min(FLOOR(h.syl))sylStart, ");
        sb.append("max(CEILING(h.mgjzc))mgjzcEnd,min(FLOOR(h.mgjzc))mgjzcStart, ");
        sb.append("max(CEILING(h.zsz))xxzszEnd,min(FLOOR(h.zsz))xxzszStart, ");
        sb.append("max(CEILING(h.zfz))fzHeJiEnd,min(FLOOR(h.zfz))fzHeJiStart, ");
        sb.append("max(CEILING(h.zzc))zczongJiEnd,min(FLOOR(h.zzc))zczongJiStart, ");
        sb.append("max(CEILING(h.zgb))xxzgbEnd,min(FLOOR(h.zgb))xxzgbStart, ");
        sb.append("max(CEILING(h.gsygpgsgdjlr))gsygpgsgdjlrEnd,min(FLOOR(h.gsygpgsgdjlr))gsygpgsgdjlrStart, ");
        sb.append("max(CEILING(h.mgsy))mgsyEnd,min(FLOOR(h.mgsy))mgsyStart, ");
        sb.append("max(CEILING(h.syl))ylnljzcsylroeEnd,min(FLOOR(h.syl))ylnljzcsylroeStart, ");
        sb.append("max(CEILING(h.srjll))ylncxljllEnd,min(FLOOR(h.srjll))ylncxljllStart, ");
        sb.append("max(CEILING(h.mll))mllEnd,min(FLOOR(h.mll))mllStart, ");
        sb.append("max(CEILING(h.jlr))jingLiRunEnd, min(FLOOR(h.jlr))jingLiRunStart, ");
        sb.append("max(CEILING(h.yysr))yingYeShouRuEnd,min(FLOOR(h.yysr))yingYeShouRuStart ");
        sb.append("from hqxg h ");
        try {
            Query query = super.getCurrentSession().createSQLQuery(sb.toString());
            List<HqxgModel> list = ((SQLQuery) query).addEntity(HqxgModel.class).list();
            if( list !=null && list.size()>0)return list.get(0);
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            //System.out.println("");
        }
        return null;
    }

 

转载于:https://www.cnblogs.com/hwaggLee/p/4644823.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值