随笔 - 0, 文章 - 75, 评论 - 0, 引用 - 0
数据加载中……

补充:HQL进阶

命名查询


<hibernate-mapping>


<class name="cn.jbit.houserent.bean.User"
table="users">



<!--
省略其他配置-->



</class>


<query
name="loginUser">



<![CDATA[



from
User u where u.name =:name and
u.password
=:password



]]>


</query>


</hibernate-mapping>


<query>元素用于定义一个HQL
查询语句,它和<class>元素并列


<![CDATA[HQL]]>方式保存HQL
语句


在程序中通过Session
对象的getNamedQuery()方法获取该查询语句



本地SQL 查询


补充:HQL进阶


总结


HQL优化从哪几个方面考虑?


Hibernate数据加载方式有哪些?有什么区别?


HQL联接查询有几种方式?


在映射文件中如何定义命名查询?


如何使用本地SQL查询?


补充:


List不走缓存,不分步查询iterater缓存、分步


[fetch]
把第二个对象作为第一个对象的一部分,会对结果影响。


<![CDATA[ SQL语句] ]>
cdata避免重载字符(特殊符号)的编译


String sql = "select {u.*} from users";
加上"{}"是属性,不加是字段


执行SQL时,SQLQuery query =
session.createSQLQuery(sql).addEntity("u",User.class); 把声明的u给填充进去,有多少实体声明过,都需要填充(.addEntity())

posted on 2012-04-22 15:54 hantai 阅读(74) 评论(0)  编辑  收藏


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


网站导航: