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

第一个Hibernate项目

时间:2016-08-11 23:04:49      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:第一个hibernate项目

一、构建Hibernate项目

    1.新建Java项目HibernateDemo1

    2.导入Hibernate下的jar包(lib->required下的所有jar包)+jdbc驱动包

    3.导入hibernate.cfg.xml文件到src目录下(在Hibernate文件目录中搜索*.cfg.xml)

     配置该文件如下:  

        <!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.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
            <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="hibernate.connection.url">jdbc:mysql:///hibernate_db</property>
            <property name="hibernate.connection.username">root</property>
	    <property name="hibernate.connection.password">root</property>
	    <property name="hibernate.hbm2ddl.auto">update</property>
	    <property name="hibernate.show_sql">true</property>
	    <property name="hibernate.format_sql">true</property>
	    <mapping resource="com\eduask\pojo\Person.hbm.xml" />
        </session-factory>
        </hibernate-configuration>

     4.建立mysql数据库hibernate_db

    5.在src目录下建两个包com.eduask.pojo、com.eduask.test

      pojo包下建一个Person类(Person.java),内容如下:

package com.eduask.pojo;

import java.util.Date;

public class Person {
	private Integer id;
	private String name;
	private int password;
	private Date birthday;
	
	public Person() {}

	public Person(String name, int password, Date birthday) {
		super();
		this.name = name;
		this.password = password;
		this.birthday = birthday;
	}

	@Override
	public String toString() {
		return "Person [id=" + id + ", name=" + name + ", password=" + password + ", birthday=" + birthday + "]";
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getPassword() {
		return password;
	}

	public void setPassword(int password) {
		this.password = password;
	}

	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
	
	
}

    pojo包下引入xml文件Person.hbm.xml,(Hibernate包中搜索),修改内容如下:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping SYSTEM "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd" >
<hibernate-mapping>
	<class name="com.eduask.pojo.Person" table="t_person">
		<id name="id">
			<generator class="native"/>
		</id>
		<property name="name" column="t_name"></property>
		<property name="password" length="6"></property>
		<property name="birthday"></property>
	</class>
</hibernate-mapping>

    test包中新建测试类HibernateTest.java,内容如下:

package com.eduask.test;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

import com.eduask.pojo.Person;

public class HibernateTest {
	public static void main(String[] args) {
		Configuration config = new Configuration().configure();
		SessionFactory factory = config.buildSessionFactory();
		Session session = factory.openSession();
		Transaction tx = session.beginTransaction();
		Person p = new Person("admin",123456,new java.util.Date()); 
		Criteria c = session.createCriteria(Person.class);
		List<Person> lists = c.list();
		System.out.println(lists.get(0).getName());
		tx.commit();
		session.close();
		factory.close();
	}
}

    运行测试类,结果如下:

Hibernate: 

    insert 

    into

        t_person

        (t_name, password, birthday) 

    values

        (?, ?, ?)

八月 11, 2016 5:17:14 下午 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl stop

INFO: HHH000030: Cleaning up connection pool [jdbc:mysql:///hibernate_db]



同时在数据库中可以看到t_person表已被创建以及插入的响应数据。


第一个Hibernate项目

标签:第一个hibernate项目

原文地址:http://11317783.blog.51cto.com/11307783/1836998

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