-
from子句是HQL语句的最简形式 from指定了HQL语句查询主体-持久化类及其属性 当编写的HQL中只有from子句,默认Hibernate框架会查询该持久化类的所有实例以及属性. from也可以实现一个与其他表有关联的表的查询.(不是多表查询,属于单表) 即A类中存在一个B类类型的变量,并且用到此B类对象,那么通过from直接获取A类的持久化对象时,同时也能获取到此A类持久化对象所包含的B类的持久化对象信息. 因为Hibernate在查询到A类持久化对象的时候后,会立刻根据外键查询此A类持久化对象所包含的B类的持久化对象信息. (如果用到此B类的持久化对象的话,Hibernate才会立刻根据外键去查询此A类持久化对象所包含的B类的持久化对象信息,如果没有用到,那么Hibernate不会根据外键去查询此B类的持久化对象信息)查看全部
-
from子句: from子句是HQL语句的最简形式,换句话说,HQL语句只需要from子句就可以执行查询了,这是为什么呢? 这是因为from子句指定了HQL语句查询的主体----映射配置的持久化类及其属性,当我们编写的HQL语句只有from子句的时候,HQL框架默认就是查询该持久化类的所有实例以及该持久化类映射配置的信息,当HQL框架将HQL解析成SQL时,就会查询该持久化类映射的数据表中的所有映射字段信息,并将返回的查询结果封装成该持久化类的list集合查看全部
-
当查询一个属性时返回的是对象而不是对象数组查看全部
-
asc升序,desc降序。默认升序。多个字段有排序规则用","隔开查看全部
-
between and 包括两个边界值查看全部
-
hql模块查看全部
-
HQL语句中可以直接使用"from 类名"就可以查询到此类对应数据库表中的所有信息.不需要像sql那样"select*from 表名",直接"form 类名"即可. list()方法返回的是HQL语句所查询的类的持久化对象的集合.所以一般定义一个带泛型的List集合来存储. Query query=session.createQuery("from Student"); List<Student> list=query.list(); for(List l:list){ System.out.println(l); } 注意:HQL是面向对象的查询,查询的是类,不像sql一样,直接查询表.因此在from 后面加的是类名(注意大小写).list()方法会根据查询的类名然后去映射文件中找到相应的数据库表,此时便把HQL语句解析成sql语句.再查询到相应的记录,最后返回记录的持久化对象的集合. 对于Hiberante5.2.4,query.list()方法已经弃用: public class SelletTest { private Session session; private Transaction transaction; @Before public void setUp() { session = HibernateSessionFactory.openSession(); transaction=session.beginTransaction(); } @Test public void selletTest() { String hql = "from Seller"; Query query = session.createQuery(hql, Seller.class); // 注:hibernate5.2.4已经弃用了query.list()方法 List<Seller> sellers = query.getResultList(); for (Seller seller : sellers) { System.out.println(seller); } } @After public void destroy(){ } })查看全部
-
select只查询一列时 得到的每个结果是对象 不是对象数组查看全部
-
select子句返回对象数组(对象)查看全部
-
集合运算查看全部
-
字符串模式匹配查看全部
-
课程总结:见截图查看全部
-
order by子句: 1.升序排序 asc 2.降序排序 desc查看全部
-
在最新的hibernate4.2.4中query.uniqueResult()已经被弃用查看全部
-
四则运算:加减乘除查看全部
举报
0/150
提交
取消