一.非Spring集成的搭建和使用
1.首先我们得下载Hibernate的需要的jar包(通常情况下导入hibernate3.jar和require文件夹里面的所有jar包).
hibernate3.jar: 这个是Hibernate的核心包,所以是必须的jar包.
cglib-2.2.jar: cglig库,Hibernate用它来实现PO字节码的动态生成,非常核心的包,所以也是必须的包
dom4j.jar
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j,直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包,Hibernate用它来读写配置文件。
commons-collections.jar: Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大。必须使用的jar包。
javassist-3.12.0.GA.jar: 这个包也是必须的.
jta-1.1.jar: 当使用JTA规范时,必须加入,JTA全称是 Java Transaction API (java 事务 API),一般情况下也是必须的.
slf4j-api-1.6.1.jar: 这个包是必须的,因为在Hibernate的核心包中多处用到了,比如Configuration.class中用到了.
slf4j-nop-1.6.1.jar: 这个包是slf4j的实现类,所以也是必须的,注意实现类得和slf4j的版本要匹配.
hibernate-jpa-2.0-api-1.0.1.Final.jar: Hibernate使用Annotation(注解)需加,所以说如果不用Annotation的话就不用加的.
(以上的包是Hibernate3.5以上的版本)
2.编写hibernate.cfg.xml配置文件到src目录下
- <?xml version='1.0' encoding='GBK'?>
- <!DOCTYPE hibernate-configuration
- PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
- <hibernate-configuration>
- <session-factory>
- <!-- 是否将运行期生成的SQL输出到日志以供调试 -->
- <property name="show_sql">true</property>
- <!-- SQL方言,这里设定的是MySQL -->
- <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
- <!-- JDBC驱动程序 -->
- <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
- <!-- JDBC URL, "?useUnicode=true&characterEncoding=GBK" 表示使用GBK进行编码 -->
- <property name="connection.url">
- jdbc:mysql://localhost:3306/HibernateTest?useUnicode=true&characterEncoding=GBK
- </property>
- <!-- 数据库用户名 -->
- <property name="connection.username">root</property>
- <!-- 数据库密码 -->
- <property name="connection.password">javamxj</property>
-
<!-- 是否在控制台打印sql语句(true/false) --> - <propertyname="show_sql">true</property>
- <!-- 指定User的映射文件 -->
- <mapping resource="javamxj/hibernate/User.hbm.xml"/>
- </session-factory>
- </hibernate-configuration>
connection.url:连接数据库的URL
connection.username:数据库登录的用户名
connection.password:用户登录数据库的密码
connection.pool_size:数据库连接池的大小
dialect:数据库所使用的方言(hibernate支持几乎所有数据库的方言)
cache.provider_class:设置二级缓存的启用/禁用
current_session_context_class:为"当前" Session指定一个(自定义的)策略
show_sql:是否在控制台打印sql语句(true/false)
format_sql:在日志或控制台输出更漂亮的sql语句(true/false)
3.创建持久类和对应的xml映射文件
持久类
- public class User {
- private int id;
- private String username;
- private String password;
- public int getId() {