hibernate

Hibernate是一个开放源代码的对象关系映射框架,他对JDBC进行了轻量级的封装,使Java开发员可以随心所欲的使用对象编程思维操作数据库。

SessionFactory接口负责初始化Hibernate.他充当数据储存源的代理,并负责创建Session对象。

Session:http是无状态的协议,没办法保存任何访问对象的信息,所以session用来记录访问者的一些信息。但是,在hibernate里面的session并不是http里的session,一般把httpSession成为用户会话。在hibernate里的session指的是应用程序和数据库的一次交互,包含了一般的crud操作。

Hibernate数据查询

Hibernate的数据查询方式主要有3种,它们是:
Hibernate Query Language(HQL)
Criteria Query
Native SQL

Hibernate Query Language(HQL)提供了十分强大的功能,推荐大家使用这种查询方式。HQL具有与SQL语言类似的语法规范,只不过SQL针对表中字段进行查询,而HQL针对持久化对象,它用来取得对象,而不进行update、delete和insert等操作。而且HQL是完全面向对象的,具备继承、多态和关联等特性。

Query query = session.createQuery(“from Student”);

List list = query.list();

Student stu = (Student)list.get(0);

Hibernate还支持Criteria查询(Criteria Query),这种查询方式把查询条件封装为一个Criteria对象。

Criteria cr = session.createCriteria(Student.class); //生成一个Criteria对象
cr.add(Restrictions.eq("name", "Bill"));//等价于where name=’Bill’
List list = cr.list();
Student stu = (Student)list.get(0);

crieria.uniqueResult();代表结果唯一取出结果

原文地址:https://www.cnblogs.com/CuiHongYu/p/6855944.html