Hibernate初次架设

来源:互联网 发布:python 爬虫抓取小说 编辑:程序博客网 时间:2024/05/16 05:40
目前,Myeclipse8.5中集成了Hibernate的模块,并且最高版本支持Hibernate3.3的版本,虽然下载了最新的4.1.1版本,但是今天不会配置,只用了自带的3.3作为入门练手了。

架设环境:

myeclipse8.5,其自带的Hibernate3.3 ,postgres 

工程最终的结构: 

步骤:

安装JDBC的驱动

1、单击工程,右键,Build path---Add Libraries---Connectivity Driver Definition,窗口如下,我们点击下面红圈图标。

2、在VendorFilter中选择了postgres,点击下面的PostgreSQL JDBC Driver ;点击 JarList,Add JAR/Zip添加自己下载的postgres的JDBC驱动;然后编辑数据库连接的属性,点击Properties,编辑postgres数据库的属性,然后OK

初步配置Hibernate工程

1、单击工程,右键,Myeclipse--Add Hibernate Capabilities,然后按下面的图片操作 
2、选择默认的Hibernate3.3,因为MyEclipse8.5的版本支持Hibernate3.3最高版本的的,点击next

3、选择hibernate.cfg.xml保存的位置,这里我们放在src文件夹底下

4、选择JDBC的驱动,这里,org.postgres.Driver就是第一步中我们添加的JDBC(PS,好像第一步添加之后,到此步好像有时显

示不出来)。会自动加载我们刚才配置postgres的 URL、Username等属性。NEXT

5、选择SessionFactory类放置的位置。sessionFactory类会自动生成,这里我们只要选择其放置的位置。在Java package下选
择new,然后我们创建一个sessionFactory的文件夹,点击finish。

6、下面就是我们初步配置后的工程目录

创建文件

按照下面的工程目录显示,创建以下文件

1、在postgres中生成customer表,使用pgAdmin运行以下语句。

(   cid integer NOT NULL,   username character varying(12) NOT NULL,   password character varying(12),   CONSTRAINT customer_pkey PRIMARY KEY (cid) )

2、customer.java文件,ORM中数据库表项的对象实体。

package ORMClass;import java.io.Serializable;public class Customer  implements Serializable{    private static final long serialVersionUID = -2760876890671823958L;private int id;    private String username;    private String password;    public int getId() {        return id;    }    public String getPassword() {        return password;    }    public String getUsername() {        return username;    }    public void setId(int id) {        this.id = id;    }    public void setPassword(String password) {        this.password = password;    }    public void setUsername(String username) {        this.username = username;    }}

3、ORM 映射的配置文件customer.hbm.xml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-mapping PUBLIC"-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping>    <class name="ORMClass.Customer" table="customer">  <!-- 注意name的属性标记着customer类,一定要完整的路径 -->        <id name="id" column="cid" type="java.lang.Integer">            <generator class="increment" />        </id>           <property name="username" column="username" type="java.lang.String"/>        <property name="password" column="password" type="java.lang.String"/>    </class></hibernate-mapping>

4、测试的test类

package Test;import org.hibernate.HibernateException;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import ORMClass.Customer;public class Test {    public static void main(String[] args) {        try {            SessionFactory sf =new Configuration().configure().buildSessionFactory();            Session session = sf.openSession();            Transaction tx = session.beginTransaction();            for (int i = 0; i < 200; i++) {                Customer customer = new Customer();                customer.setUsername("customer" + i);                customer.setPassword("customer");                session.save(customer);            }            tx.commit();            session.close();        } catch (HibernateException e) {            e.printStackTrace();        }    }}

5、Hibernate的配置文件,Hibernate.cfg.xml

<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-configuration PUBLIC          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools.--><hibernate-configuration><session-factory><property name="dialect">org.hibernate.dialect.PostgreSQLDialect</property><property name="connection.url">jdbc:postgresql://localhost/SQLTest</property><property name="connection.username">postgres</property><property name="connection.driver_class">org.postgresql.Driver</property><property name="myeclipse.connection.profile">org.postgresql.Driver</property><property name="connection.password">root123</property><mapping resource="ORMClass/Customer.hbm.xml" /></session-factory></hibernate-configuration>

这个配置文件也可以使用代码的Configuration视图,更加直观

点击run,会出现一下结果:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).log4j:WARN Please initialize the log4j system properly.

查看postgres数据库,会看到数据库中添加的数据

0 0