1.导入jar包
2.新建一个entity实体类,然后手动写一个实体类的映射类文件.hbm.xml;
这个是hibernate的操作对象,映射对象决定表名
3.配置文件hibernate.cfg.xml
4.新建dao层和工具类
代码重复,封装一个工具类,静态方法,类名.方法名直接调用可以
5.impl层(重要)
(1)hibernate做增加
增加不能用hql开发,因为不支持
(2)hibernate做删除(2种方法)
直接用delete
Hibernate查询语言:hql(要用到查询):hibernate中的hql只有类和属性,没有表和字段的概念(2)有局限性,不支持insert,只能做增删改,对于复杂sql无能为力
用hql开发删除用到executeUpdate的方法
批量删除
(3)hibernate做修改(2种方法)
直接用session的方法
用hibernate查询语言修改
(4)hibernate做查询(多种情况):用到的是hibernate查询语言hql
a.hibernate操作hql(接近sql)
单独查询+分页查询
hql查询指定字段;(1)select new 类名(字段名)(2)有字段的构造方法
模糊+分页(User是类名,id,name等是类中的属性,不是表中的字段)
统计数量,id是类中的属性,还可以用avg,max等其他聚合函数
b..hibernate操作复杂的sql(原生的sql语句)
(1)利用creatSQLQuery做查询
(2)利用creatSQLQuery做增加
即:hibernate 中createQuery与createSQLQuery两者区别是:
前者用的hql语句进行查询,后者可以用sql语句查询
前者以hibernate生成的Bean为对象装入list返回,后者则是以对象数组进行存储
后者则是以对象数组进行存储