Hibernate 原生SQL的使用,类似iBaits方式

本文介绍了一个使用Hibernate框架通过原生SQL查询典型设备缺陷报表的方法。该示例展示了如何定义Hibernate映射文件及对应的Java代码来执行SQL查询并返回具体的数据模型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hibernate 原生SQL
None.gif <? xml version="1.0" ?>
None.gif
<! DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
None.gif"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>
None.gif
<!--  Generated 2007-3-20 16:44:34 by Hibernate Tools 3.2.0.beta8  -->
None.gif
< hibernate-mapping >
None.gif    
< class  name ="com.mip.biz.defect.domain.TypidefdetailVo" >
None.gif        
< id  name ="oid"  type ="java.lang.Long" >
None.gif            
< column  name ="OID"  precision ="22"  scale ="0"   />
None.gif            
< generator  class ="assigned"   />
None.gif        
</ id >
None.gif        
< property  name ="devtype"  type ="string" >
None.gif            
< column  name ="DEVTYPE"  length ="20"   />
None.gif        
</ property >
None.gif        
< property  name ="pwlevel"  type ="string" >
None.gif            
< column  name ="PWLEVEL"  length ="20"   />
None.gif        
</ property >
None.gif        
< property  name ="stno"  type ="java.lang.Long" >
None.gif            
< column  name ="STNO"  precision ="22"  scale ="0"   />
None.gif        
</ property >
None.gif        
< property  name ="stname"  type ="string" >
None.gif            
< column  name ="STNAME"  length ="50"   />
None.gif        
</ property >
None.gif        
< property  name ="factory"  type ="string" >
None.gif            
< column  name ="FACTORY"  length ="40"   />
None.gif        
</ property >
None.gif    
None.gif        
< property  name ="devstyle"  type ="string" >
None.gif            
< column  name ="DEVSTYLE"  length ="40"   />
None.gif        
</ property >
None.gif        
< property  name ="finddate"  type ="java.util.Date" >
None.gif            
< column  name ="FINDDATE"  length ="7"   />
None.gif        
</ property >
None.gif        
< property  name ="definfo"  type ="string" >
None.gif            
< column  name ="DEFINFO"  length ="200"   />
None.gif        
</ property >
None.gif        
< property  name ="defreason"  type ="string" >
None.gif            
< column  name ="DEFREASON"  length ="200"   />
None.gif        
</ property >
None.gif        
< property  name ="measure"  type ="string" >
None.gif            
< column  name ="MEASURE"  length ="200"   />
None.gif        
</ property >
None.gif        
< property  name ="cleardate"  type ="java.util.Date" >
None.gif            
< column  name ="CLEARDATE"  length ="7"   />
None.gif        
</ property >
None.gif      
None.gif    
</ class >
None.gif    
None.gif
<!--  典型设备缺陷报表(紧急+重大+一般,详细情况)  -->
None.gif
< sql-query  name ="queryTypidefdetailReportQuerySql" >
None.gif    
< return  alias ="detail"  class ="com.mip.biz.defect.domain.TypidefdetailVo" >
None.gif        
< return-property  name ="oid"  column ="typOID" />
None.gif        
< return-property  name ="devtype"  column ="typDEVTYPE" />
None.gif        
< return-property  name ="pwlevel"  column ="typPWLEVEL" />
None.gif        
< return-property  name ="factory"  column ="typFACTORY" />
None.gif        
< return-property  name ="devstyle"  column ="typDEVSTYLE" />
None.gif        
< return-property  name ="finddate"  column ="typFINDDATE" />
None.gif        
< return-property  name ="definfo"  column ="typDEFINFO" />
None.gif        
< return-property  name ="defreason"  column ="typDEFREASON" />                                 
None.gif        
< return-property  name ="cleardate"  column ="typCLEARDATE" />                                 
None.gif        
< return-property  name ="measure"  column ="typMEASURE" />
None.gif        
None.gif        
< return-property  name ="stno"  column ="typSTNO" />                                                         
None.gif        
< return-property  name ="stname"  column ="typeSTNAME" />         
None.gif                
None.gif    
</ return >
None.gif    
<![CDATA[
None.gif    SELECT 
None.gif        1 as typSTNO,
None.gif        'stname' as typeSTNAME,
None.gif        definfo.taskbillid AS typOID,
None.gif        definfo.devtype AS typDEVTYPE,
None.gif        definfo.powerlevel AS typPWLEVEL,
None.gif        definfo.devfactory AS typFACTORY,
None.gif        definfo.xinghao AS typDEVSTYLE,
None.gif        definfo.findtime AS typFINDDATE,
None.gif        definfo.findcontent AS typDEFINFO,
None.gif        definfo.slidea AS typDEFREASON,
None.gif        definfo.checktime AS typCLEARDATE,
None.gif        definfo.checkresult AS typMEASURE
None.gif     FROM DEFECT_DEFECTINFO definfo 
None.gif     WHERE 
None.gif        definfo.orgid = :orgid
None.gif    
]]>
None.gif
</ sql-query >      
None.gif
</ hibernate-mapping >
None.gif
对应的java代码
ExpandedBlockStart.gif ContractedBlock.gif      public  List  queryTypidefdetailsByHibernate(Long loginerOrgid,Date startTime, Date endTime)  dot.gif {
InBlock.gif        Query query 
= this.getSession().getNamedQuery("queryTypidefdetailReportQuerySql");
InBlock.gif        query.setLong(
"orgid"new Long(1));
InBlock.gif        List result 
= query.list();
InBlock.gif        
return result;
ExpandedBlockEnd.gif    }
107200.html

Lib 2007-03-29 13:20 发表评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值