Hibernate学习笔记(一)

一、环境搭建;

     添加以下.jar文件:

     1、Hibernate3.3.2.jar

     2、lib/required目录下的全部jar

     3、另外还要单独去下载添加 slf4j-nop.jar;

      注:slf4j-nop.jar是slf4j-api.jar的实现,slf4j是用来输出日志信息的,Hibernate3里面是用它来输入日志的,所以我们要添加slf4j的实现。

二、hibernate.cfg.xml 配置;

<!--数据库连接信息-->
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.username">scott</property>
<property name="hibernate.connection.password">scott</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property>
<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>

<!-- Enable Hibernate's automatic session context management 如果使用的是annotation,必须加上这个-->
<property name="current_session_context_class">thread</property>

 <!--对象映射(class这种映射是配合annonation使用的,如果是resource则是配合.xml使用的)-->		
<mapping class="com.darren.pojo.Husband" />
<mapping class="com.darren.pojo.Wife" />

三、主键设置:

   1、xml:

<id name="id">
         <!--class中填入你想要的生成策略-->
         <!--生成策略在下面有介绍过-->
         <generator class="native"></generator>
</id>

   2、Annotation:

    在属性的get()方法上面添加:@GeneratedValue,这是默认的写法,它完整的表示是:@GeneratedValue(strategy=GenerationType.AUTO),auto相当于xml形式中的native.其他都一样。

四、主键生成策略:

    1、identity :数据库自动生成,int类型,自增,适用mysql、mssql等数据库。

    2、sequence : 数据库自动生成,int类型,自增,适用oracle。

    3、uuid :由hibernate生成一个很不重复的ID。

    4、native: 根据数据类型,自动决定适用那种主键生成策略;例如:用mysql,则选择适用identiry生成策略,用oracle数据库,则选择适用sequence生成策略。

相关推荐