hibernate Hibernate情感SQLCC++
程序员文章站
2022-07-14 17:37:16
...
hibernate的多表查询是十分稀罕的东西。
比如2个表关联 NewsClass 跟 News
今天看见几个帖子上却是这种写法,很是奇怪。
可以直接用对象查,干吗还要join来join去的,跟sql不是一样了吗?
查了好久才知道2.x不支持对象的方式来查询,就算两个表之间存在一定的关联关系也一定要用join来连接的。
可能我摸hibernate的时候已经是3.x了,一直习惯自己那样写。
在我寻找答案的时候,还意外发现点东西,也顺手写下来好了。
一个栏目包含多个子栏目的结构
配置
我想查询 情感天空 这个栏目的父栏目
如下
hibernate给我返回了几句sql
这些sql写得真是漂亮,越来越想了解他怎么生成了
比如2个表关联 NewsClass 跟 News
//查找名字为 “天气预报” 的新闻的栏目 String hql="from Newsclass c where n.news.name="天气预报""; Query query=session.createQuery(hql); List list=query.list();
今天看见几个帖子上却是这种写法,很是奇怪。
可以直接用对象查,干吗还要join来join去的,跟sql不是一样了吗?
//查找名字为 “天气预报” 的新闻的栏目 String hql="from Newsclass c join c.news n where n.name="天气预报""; Query query=session.createQuery(hql); List list=query.list();
查了好久才知道2.x不支持对象的方式来查询,就算两个表之间存在一定的关联关系也一定要用join来连接的。
可能我摸hibernate的时候已经是3.x了,一直习惯自己那样写。
在我寻找答案的时候,还意外发现点东西,也顺手写下来好了。
一个栏目包含多个子栏目的结构
配置
<hibernate-mapping> <class name="org.lch.webshop.model.Newsclass" table="newsclass"> <id name="id" type="java.lang.Integer"> <column name="id" /> <generator class="native"></generator> </id> <many-to-one name="newsclass" class="org.lch.webshop.model.Newsclass" fetch="select"> <column name="ParentID" /> </many-to-one> <property name="classname" type="java.lang.String"> <column name="cLassname" length="20" /> </property> <set name="newsclasses" inverse="true" lazy="false"> <key> <column name="ParentID" /> </key> <one-to-many class="org.lch.webshop.model.Newsclass" /> </set> </class> </hibernate-mapping>
我想查询 情感天空 这个栏目的父栏目
如下
String hql="from Newsclass n where n.newsclasses.classname='情感天空'" order by desc"; Query query=session.createQuery(hql); List list=query.list();
hibernate给我返回了几句sql
Hibernate: select newsclass0_.id as id, newsclass0_.ParentID as ParentID0_, newsclass0_.cLassname as cLassname0_ from newsclass newsclass0_, newsclass newsclasse1_ where newsclass0_.id=newsclasse1_.ParentID and newsclasse1_.name='情感天空'
这些sql写得真是漂亮,越来越想了解他怎么生成了
上一篇: 游戏状态
下一篇: xml & json 转换工具
推荐阅读
-
Eclipse怎么在线配置Hibernate Tools?
-
MyEclipse不能查看Hibernate函数说明该怎么办?
-
Hibernate Oracle sequence的使用技巧
-
Eclipse添加xml文件提示及Hibernate配置学习
-
基于spring+hibernate+JQuery开发之电子相册(附源码下载)
-
Spring+SpringMVC+Hibernate项目环境搭建的步骤(图文)
-
struts2+spring+hibernate分页代码[比较多]第1/7页
-
spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
-
jsp hibernate的分页代码第1/3页
-
jsp hibernate 数据保存操作的原理