package cn.itcast.h3.query.hql; import java.util.List; import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.criterion.DetachedCriteria; import org.hibernate.criterion.Order; import org.hibernate.criterion.Projection; impo…
lHibernate共提供5种查询方式 •OID数据查询方式 •HQL数据查询方式 •QBC数据查询方式 •本地SQL查询方式 •OGN数据查询方式 OID数据查询方式 l前提:已经获取到了对象的OID l查询:基于OID,使用get/load方法查询对应的数据 l作用:使用OID获取对应的数据 HQL数据查询方式 l前提:已知要进行查询的数据结构和条件 l查询:基于Query对象,完成HQL语句的查询,得 到查询结果 l作用:基于HQL语法规则,查询对应的数据 QBC数据查询方式 l前提:已知…
lQBC(Query By Criteria)是一种Hibernate中使用面向对象的格式进行查询的计数 lQBC查询方式步骤 •获取Session对象 •初始化Criteria对象(使用Session对象创建) •由Session对象创建 •传入要查询的数据模型类 •添加各种查询条件 •执行查询返回结果(返回单条数据或集合数据) lQBC查询格式非常简单,更符合编程人员的习惯 •Criteria对象用于由Session对象创建,传入要查询的PO类 •Criteria c = s.createC…
package cn.itcast.h3.hql; import java.util.List; import org.hibernate.Query; import org.hibernate.Session; import cn.itcast.h3.hql.vo.StudentModel; import cn.itcast.h3.hql.vo.TeacherModel; import cn.itcast.h3.util.HibernateUtil; public class HQLApp {…
本地SQL查询方式 lHibernate框架支持使用原生态SQL语句进行操作数据库 l查询对象SQLQuery由Session获取 •SQLQuery sq = s.createSQLQuery("select * from tbl_teacher"); l查询结果为Object或Object[] •使用本地SQL查询,如果想将查询结果封装成对象,可以对要查询的表起别名,然后使用{别名}格式将其封装,最后还要添加别名指代的封装对象 •简化格式 l使用本地SQL查询,也可以使用动态参数的…
插入数据删除数据修改数据查询单条数据查询多条数据 HelloWorldApp.java package cn.itcast.h3.helloworld; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import cn.itcast.h3.helloworld.v…
package cn.itcast.h3.query.hql; import java.util.List; import org.hibernate.Query; import org.hibernate.Session; import cn.itcast.h3.query.hql.vo.TeacherModel; import cn.itcast.util.HibernateUtil; public class MainRelaApp { //fetch="select" lazy…
Hibernate获取数据方式 lHibernate提供了多种方式获取数据 •load方法获取数据 •get方法获取数据 •Query/ Criteria对象获取数据 lHibernate获取的数据分为两类 •直接获取的数据(类级数据/直接数据) •使用load/get方法根据OID获取数据 •使用HQL语句获取到的数据 •使用Criteria对象获取到的数据 •使用关联关系获取主方数据时自动获取的从方数据(关联数据) •在一对一关系中,获取一方数据后所携带的从方数据 •在一对多关系中,获取一方…
一.HQL查询(Hibernate Query Language)多表查询,但不复杂时使用 Hibernate独家查询语言,属于面向对象的查询语言 1.基本查询 2.条件查询 注意:HQL语句中不可能出现任何数据库相关的信息 1)?占位符 2)命名占位符 3.分页查询 二.Criteria查询(单表条件查询) Hibernate自创的无语句,面向对象查询 1.基本查询 2.条件查询: SQL中的表示 Criteria中的表示 > gt >= ge < lt <= le == eq…
QBC查询 1.简单查询 Criteria c = s.createCriteria(TeacherModel.class); 2.获取查询结果 多条:list 单挑:uniqueResult 3.分页查询 setFirstResult(int) setMaxResults(int) 4.查询排序 添加排序 c.addOrder(Order); 排序规则 Order od = Order.asc("字段名") Order od = Order.desc("字段名")…