posts - 16, comments - 6, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

在使用Hibernate做开发时,可以直接在源代码里写HQL/SQL,也可以利用配置文件统一写HQL/SQL

下面介绍后者的做法

 1hibernate.queries.hbm.xml
 2***************************
 3<?xml version="1.0"?>
 4
 5<!DOCTYPE hibernate-mapping PUBLIC
 6      "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
 7      "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
 8
 9<hibernate-mapping>
10
11  <typedef class="org.jbpm.db.hibernate.StringMax" name="string_max" />
12  
13  <!-- related to ProcessDefintion -->
14  <!-- ########################### -->
15<!-- HQL -->
16  <query name="QueryUser">
17    <![CDATA[
18     FROM   User u
            WHERE     u.username = :username    
22    ]]>
23  </query>
24<!--SQL-->
25 <sql-query name="SqlQueryUser">  
26        <![CDATA[  
27             SELECT  
28                  {u.*}  
29             FROM  
30                  user u  
31              WHERE  
32                  u.user_name = :userName  
33         ]]>
34    <return alias="u" class="com.test.entity.User"/>  
35    </sql-query>
36
37</hibernate-mapping>
 1hibernate.cfg.xml
 2---------------------
 3<?xml version="1.0"?>
 4<!DOCTYPE hibernate-configuration PUBLIC
 5    "-//Hibernate/Hibernate Configuration DTD//EN"
 6    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
 7    
 8<hibernate-configuration>
 9    <session-factory>
10        
11        <mapping resource="User.hbm.xml"/>
12        
13        <mapping resource="hibernate.queries.hbm.xml"/>
14        
15        
16    </session-factory>
17</hibernate-configuration>
18

1Java Code:
2----------
3String username = "";
4Session session = ;
5Query query = session.getNamedQuery("QueryUser");
6//Query query = session.getNamedQuery("SqlQueryUser");
7query.setString("username", username);
8List userList = query.list();
9


评论

# re: Hibernate怎么利用配置文件配置HQL/SQL  回复  更多评论   

2014-05-27 15:17 by EOC
最基本的东西!

# re: Hibernate怎么利用配置文件配置HQL/SQL[未登录]  回复  更多评论   

2015-02-04 08:42 by 123
@EOC
你他妈不装能死?

只有注册用户登录后才能发表评论。


网站导航: