Hibernate源代码分析
大纲:
1. org.hibernate :该包的类基本上都是接口类和异常类
2. org.hibernate.cache.* :cache的实现类
3. org.hibernate.cfg.* :配置文件读取类
4. org.hibernate.collection.* :Hibernate集合接口实现类:例如List(PersistentList),Set(PersistentSet), Bag(PersistentBag)等等,Hibernate之所以要自行编写集合接口实现类是为了支持延迟加载。
5. org.hibernate.connection.* :几个数据库连接池的Provider
6. org.hibernate.dialect.* :支持多种数据库特性,每个Dialect实现类代表一种数据库,描述了该数据库支持的数据类型和其它特点,例如是否有AutoIncrement,是否有Sequence,是否有分页sql等等
7. org.hibernate.eg.* :Hibernate文档中用到的例子
8. org.hibernate.engine.* :这个包的类作用比较散
9. org.hibernate.hql.* :HQL的实现org.hibernate.id.* :ID生成器
10. orghibernate.impl.* :最核心的包,一些重要接口的实现类,如果Session,SessionFactory,Query等
11. org.hibernate.jca.* :JCA支持,把Session包装为支持JCA的接口实现类
12. org.hibernate.jmx.* :jmx的实现
13. org.hibernate.loader.* :也是很核心的包,主要是生成sql语句的
14. org..hibernate.lob.* :Blob和Clob支持
15. org.hibernate.mapping.* :hbm文件的属性实现
16. org.hibernate.metadata.*:PO的Meta实现
17. org.hibernate.odmg.*:ODMG是一个ORM标准,这个包是ODMG标准的实现类
18. org.hibernate.persister.*:核心包,实现持久对象和表之间的映射
19. org.hibernate.proxy.*:Proxy和Lazy Loading支持
20. org.hibernate.ps.*:该包是PreparedStatment Cache
21. org.hibernate.sql.*:生成JDBC sql语句的包
22. org.hibernate.test.*:测试类,你可以用junit来测试Hibernate
23. org.hibernate.tool.hbm2ddl.*:用hbm配置文件生成DDL
24. org.hibernate.transaction.*:Hibernate Transaction实现类
25. org.hibernate.type.*:Hibernate中定义的持久对象的属性的数据类型
26. org.hibernate.util.*:一些工具类,作用比较散
27. org.hibernate.xml.*:XML数据绑定