Hibernate3.2
核心包作用
包 作用 说明
jta.jar 标准的JTA API 必要
commons-logging.jar 日志功能 必要
commons-collections.jar 集合类 必要
antlr.jar ANother Tool for Language Recognition(antlr) 必要
dom4j.jar XML配置和映射解释器 必要
Hibernate3.jar 核心库 必要
asm.jar ASM字节码库 如果使用“cglib”则必要
asm-attrs.jar ASM字节码库 如果使用“cglib”则必要
ehcache.jar EHCache缓存 如果没有其它的缓存,则它是必要的
cglib.jar CGLIB 字节码解释器 如果使用“cglib”则必要
包 作用 说明
jta.jar 标准的JTA API 必要
commons-logging.jar 日志功能 必要
commons-collections.jar 集合类 必要
antlr.jar ANother Tool for Language Recognition(antlr) 必要
dom4j.jar XML配置和映射解释器 必要
Hibernate3.jar 核心库 必要
asm.jar ASM字节码库 如果使用“cglib”则必要
asm-attrs.jar ASM字节码库 如果使用“cglib”则必要
ehcache.jar EHCache缓存 如果没有其它的缓存,则它是必要的
cglib.jar CGLIB 字节码解释器 如果使用“cglib”则必要
Hibernate
的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和 Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五的核心接口分别加以介绍。
·Session
接口:Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语 句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。
这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSesion对象称为用户session。
·SessionFactory
接口:SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建 Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个 SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
·Configuration
接口:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在 Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。
·Transaction
接口:Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。
·Query
和Criteria接口:Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。
hibernate3.jar
下具体文件夹说明
org.hibernate.type.* //Hibernate
中定义的持久对象的属性的数据类型
org.hibernate.transaction.* //Hibernate Transaction
实现类
org.hibernate.util.* //
一些工具类,作用比较散
org.hibernate.tool.hbm2ddl.* //
用hbm配置文件生成DDL
org.hibernate.sql.* //
生成JDBC sql语句的包
org.hibernate.proxy.* //Proxy
和Lazy Loading支持
org.hibernate.persister.* //
核心包,实现持久对象和表之间的映射
org.hibernate.metadata.* //PO
的Meta实现
org.hibernate.mapping.* //hbm
文件的属性实现
org.hibernate.lob.* //Blob
和Clob支持
org.hibernate.loader.* //
也是很核心的包,主要是生成sql语句的
org.hibernate.jmx.* //
只知道JMX是用来编写App Server的管理程序的,使得App Server可以通过JMX接口管理Hibernate
org.hibernate.impl.* //
最核心的包,一些重要接口的实现类,如果Session,SessionFactory,Query等
org.hibernate.id.* //ID
生成器
org.hibernate.hql.* //HQL
实现
org.hibernate.engine.* //
这个包的类作用比较散
//
支持多种数据库特性,每个Dialect实现类代表一种数据库,描述了该数据库支持的数据类型和其它特点,例如是否有AutoIncrement,是否有Sequence,是否有分页sql等等
org.hibernate.dialect.*
org.hibernate.connection.* //
几个数据库连接池的Provider
//Hibernate
集合接口实现类,例如List,Set,Bag等等,Hibernate之所以要自行编写集合接口实现类是为了支持lazy loading
org.hibernate.collection.*
org.hibernate.cfg.* //
配置文件读取类
org.hibernate.cache.* //JCS
的实现类
org.hibernate.* //
该包的类基本上都是接口类和异常类
Hibernate3.2 核心包作用
包
|
作用
|
说明
|
jta.jar
|
标准的
JTA API
|
必要
|
commons-logging.jar
|
日志功能
|
必要
|
commons-collections.jar
|
集合类
|
必要
|
antlr.jar
|
ANother Tool for Language Recognition(antlr)
|
必要
|
dom4j.jar
|
XML
配置和映射解释器
|
必要
|
Hibernate3.jar
|
核心库
|
必要
|
asm.jar
|
ASM
字节码库
|
如果使用
“cglib”
则必要
|
asm-attrs.jar
|
ASM
字节码库
|
如果使用
“cglib”
则必要
|
ehcache.jar
|
EHCache
缓存
|
如果没有其它的缓存,则它是必要的
|
cglib.jar
|
CGLIB
字节码解释器
|
如果使用
“cglib”
则必要
|
以下是可选包
|
||
versioncheck.jar
|
版本检查
|
|
swarmcache.jar
|
|
|
jboss-cache.jar
|
TreeCache
|
|
jgroups.jar
|
|
|
xml-apis.jar
|
JAXP API
|
|
c3p0-0.9.1.jar
|
C3PO JDBC
链接池
|
|
connector.jar
|
JCA API
|
|
jboss-system.jar
|
|
使用
TreeCache
时必要
|
jacc-1_0-fr.jar
|
JACC
库
|
|
checkstyle-all.jar
|
|
|
junit.jar
|
|
|
javassist.jar
|
Javassist
字节码解释器
|
|
ant-lanuncher.jar
|
|
|
jaas.jar
|
JAAS API
|
|
jdbc2_0-stdext.jar
|
JDBC
扩展
API
|
|
ant-antlr.jar
|
Ant antlr
支持
|
|
jboss-jmx.jar
|
|
|
cleanimports.jar
|
cleanimports
|
|
xerces.jar
|
SAX parser
|
JDK
版本低于
1.4
时必要
|
jaxen-1.1-beta-7.jar
|
Jaxen
|
如果想提高启动性能则去使用
|
ant-junit.jar
|
Ant junit support
|
|
ant-swing.jar
|
ant swing support
|
|
ant.jar
|
|
|
proxool.jar
|
Proxool JDBC
连接池
|
|
concurrent.jar
|
|
使用
TreeCache
需要
|
syndiag2.jar
|
|
|
总结:
最 小必要包为antlr.jar,cglib.jar,asm.jar, asm-attrs.jar, commons-collections.jar, commons-loggins.jar ,encache.jar, dom4j.jar,log4j.jar,jta.jar
spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了spring-mock.jar里所包含的内容外其它所有jar包 的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类的。
除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组件,用户可以根据自己的需要来选择组合自己的jar包,而不必引入整个spring.jar的所有类文件。
(1) spring-core.jar
这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。
(2) spring-beans.jar
这 个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行 Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC /DI支持,引入spring-core.jar及spring- beans.jar文件就可以了。
除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组件,用户可以根据自己的需要来选择组合自己的jar包,而不必引入整个spring.jar的所有类文件。
(1) spring-core.jar
这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。
(2) spring-beans.jar
这 个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行 Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC /DI支持,引入spring-core.jar及spring- beans.jar文件就可以了。
原文地址:http://blog.csdn.net/cocojiji5/archive/2008/10/23/3128324.aspx