码迷,mamicode.com
首页 > Web开发 > 详细

第一个Hibernate程序

时间:2015-09-10 23:59:47      阅读:482      评论:0      收藏:0      [点我收藏+]

标签:

一 新建一个Java工程(Hibernate)

  在src目录下创建一个名为"hibernate.cfg.xml"的文件并配置好各个属性,如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC 
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
        <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property>
        <property name="hibernate.connection.username">scott</property>
        <property name="hibernate.connection.password">Oracle11g</property>
    </session-factory>
</hibernate-configuration>

二 创建数据库表

1 create table login(
2 username varchar2(20),
3 password varchar2(20)
4 );

三 创建持久化类及映射文件
  持久化类:

 1 package com.demo;
 2 
 3 public class Login {
 4 
 5     private String username;
 6     private String password;
 7     
 8     public String getUsername() {
 9         return username;
10     }
11     public void setUsername(String username) {
12         this.username = username;
13     }
14     public String getPassword() {
15         return password;
16     }
17     public void setPassword(String password) {
18         this.password = password;
19     }
20     
21 }

  映射文件:

 1 <?xml version="1.0"?>
 2 <!DOCTYPE hibernate-mapping PUBLIC 
 3     "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
 4     "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
 5 
 6 <hibernate-mapping>
 7     <class name="com.demo.Login" table="LOGIN">
 8         <id name="username" type="java.lang.String">
 9             <column name="USERNAME" length="20"/>
10             <generator class="assigned"/>
11         </id>
12         <property name="password" type="java.lang.String">
13             <column name="PASSWORD" length="20" not-null="true"/>
14         </property>    
15     </class>
16 </hibernate-mapping>

  从以上代码中可以看到对象与数据库表的对应关系。

  class 标签用户制定Login类与login表的映射。

  id 标签代表主键,也就是说username是唯一的并且不能为空。

    id 标签中的name表示Login类中的属性名称,type表示类型;column标签中的name表示数据库表中字段的名称。generator标签定义主键的生成方式,此处的设置表示主键是由应用程序分配的。

  property 标签中的内容表示Login类中与数据库表中其他字段的映射,如果还有其他字段,就需要再增加property标签。用于其他字段的标签配置与 id 标签基本类似,但是在这里有一个not-null属性,用来控制该字段是否为空。若值为true,则该字段不能为空,反之,则可以为空。

  添加完这个映射文件后,需要在hibernate.cfg.xml文件中添加这个映射文件的声明。也就是声明Login.hbm.xml是一个映射配置文件。此声明语句添加在<session-factory>的结束标签之前,如下所示:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE hibernate-configuration PUBLIC 
 3     "-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
 4         "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
 5 <hibernate-configuration>
 6     <session-factory>
 7         <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
 8         <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property>
 9         <property name="hibernate.connection.username">scott</property>
10         <property name="hibernate.connection.password">Oracle11g</property>        
11         <mapping resource="com/demo/Login.hbm.xml"/>
12     </session-factory>
13 </hibernate-configuration>

  至此,一个Hibernate项目就创建并配置完毕。

 

第一个Hibernate程序

标签:

原文地址:http://www.cnblogs.com/leny/p/4799621.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!