先附上hibernate学习路线图:
使用hibernate首先需要添加环境:
1、jar包
jar包下载地址:http://hibernate.org/orm/downloads/
2、配置文件
hibernate.cfg.xml(主配置文件)
xxx.hbm.xml(映射文件)
1、主配置文件模板:
主配置文件详解:
2、映射文件模板
映射文件详解请参考:
Hibernate API常用接口:
1、Hibernate API 提供了许多接口来进行数据库的操作,例如:增删改查(CRUD)。
这些接口包括:Session、Transaction和Query接口。
2、配置文件的接口:
Configuration,配置Hibernate,启动Hibernate,创建SessionFactory对象;初始化Hibernate的接口:SessionFactory,初始化Hibernate,当数据存储源的代理,创建Session对象。
下面通过一段代码来说明这些接口的使用:
// --- 准备
Configuration cfg = new Configuration().configure(); // hibernate.cfg.xml
SessionFactory sessionFactory = cfg.buildSessionFactory(); // 只需要一个
// --- 模板代码
Session session = sessionFactory.openSession();
Transaction tx = null;
try{
tx = session.beginTransaction();
// 操作
tx.commit();
}catch(Exception e){
tx.rollback();
throw e;
}finally{
session.close();
}
Session中的方法:
save(Object) --> insert into ..
update(Object) --> update ..
saveOrUpdate(Object)
delete(Object) --> delete ..
get(Class, id) --> select ...
createQuery(hql) --> select ..
如需详细了解可自行查阅文档。
Hibernate 集合映射:
1、Set
无序,不重复
2、List
有序,可以重复
3、Map
键值对
HashMap无序,不重复(以key为准)
4、数组
5、Bag
无序,可重复
List
详细使用情况请见:
Hibernate 对象状态:
临时状态:
与数据库没有对应,跟Session没有关联。
一般是新new出的对象。
持久化状态:
对象在Session的管理之中,最终会有对应的数据库记录。
特点:
1,有OID
2,对对象的修改会同步到数据库。
游离状态:
数据库中有对应记录,但对象不在Session管理之中。
修改此状态对象时数据库不会有变化。
删除状态:
执行了delete()后的对象。
Session中根据对象的状态使用的对应的方法:
Hibernate使用hql语句查询:
http://www.cnblogs.com/liuconglin/p/5716624.html#_label0
Hibernate 映射 关联关系:
一对多和多对一
设计图(部门和员工就属于此种关系)
维护关联关系
对于一对多:就是设置外键列的值
对于多对多:就是插入或删除中间表的记录
映射 关联关系 多对多
以上内容就是小编对Hibernate的初步总结,待后续了解的更加深入再进行补充。