通过上一篇文章我的hibernate学习记录(一)基本上的入门了hibernate,但是,里面还有还多东西是通过迷迷糊糊的记忆,或者说copy直接弄进去的,所以这篇文章就需要对上篇的一些文件、对象进行说明。
1.xxx.hbm.xml
上一篇中有个文件是customer.hbm.xml,这是一个关于对象实体和表之间关系的配置文件
2.xxx.cfg.xml
这是hibernate的主配置文件,主要是通过该配置文件然后hibernate程序启动时解析该文件的信息,比如数据库连接信息,对象与数据库表之间的映射信息
hibernate-configuration是根节点,节点中包含了session-factory session-factory是hibernate中SessionFactory对象的一个配置信息
1.Configuration对象
这个类我是简单的先理解为加载配置文件的工具类。
Configuration中有几个构造函数分别是:
- //空参构造在内部实现的时候是调用了configure(String resource)
- //它默认的加载了classpath下的hibernate.cfg.xml
- public Configuration configure()
- //通过字符串所代表的配置文件的路径加载
- public Configuration configure(String resource)
- //通过URL加载文件,读取的也是一个路径
- public Configuration configure(URL url)
- //File类,可以代表一个文件或者目录,所以这也是实现对文件的加载
- public Configuration configure(File configFile)
2.SessionFactory对象
SessionFactory是Session的工厂,里面包含了数据库的连接信息等
功能很单一,就是生产(创建)Session,它是通过Configuration生成的信息被创建的,所以Configuration的行动就是为了生成SessionFactory
3.Session&Transaction对象
Session是操作数据库的一个对象,与数据库进行连接,相当于JDBC中Connection,但是Session比起Connection功能更加多,可以直接操作数据库
Transaction关于这个的理解,我也不是很到位,所以这里贴出一些别人的文章作为参考:
http://blog.csdn.net/leroy008/article/details/8594397
http://blog.csdn.net/qq_33442549/article/details/51824616
http://www.cnblogs.com/BigAngel/p/3498534.html
来源: http://www.cnblogs.com/lger/p/7531093.html