java项目中使用Hibernate的小例子

准备工作

  1. 下载Hibernate,地址http://hibernate.org/orm,即可下载最新版本,由于笔者用的书是以4.3.5来写的,为了统一我也使用这个版本的吧,下载地址
  2. 下载好后的压缩包解压后找到lib/required子目录下的所有jar包添加到应用的类加载路径中,我这里以eclipse为例,示例地址

做一个小例子

首先创建好hibernate.cfg.xml文件,eclipse有自带的工具去创建的,右击我们的java项目,选择【New】,找到Hibernate Configuration File,点击【next】
java项目中使用Hibernate的小例子_第1张图片
之后选择好保存的路径,一般我们是放在src文件夹下的,在点【next】
java项目中使用Hibernate的小例子_第2张图片
输入好数据库链接信息,点击【Finish】,就可以自动生成一个xml文件,我们还需要在这个xml文件中添加一些参数
配置好的xml文件内容如下



    
    	
        com.mysql.jdbc.Driver
        
        jdbc:mysql://localhost:3306/test
        
        root
        
        
        
        20
        
        1
        
        5000
        
        100
        
        org.hibernate.dialect.MySQL5Dialect
        
        update
        
        true
        
        true
        
        
    


之后我们创建一个类用于测试,内容如下
package test;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;

import entity.Person;

public class Test {
	public static void main(String[] args) {
		//不带参数的configure方法将默认加载hibernate.cfg.xml文件,如果传入abc.xml作为参数
		//则不加载hibernate.cfg.xml,而改成abc.xml
		Configuration configuration = new Configuration().configure();

		ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
			.applySettings(configuration.getProperties()).buildServiceRegistry();
		
		//以Configuration实例创建SessionFactory实例
		SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
		
		//创建Session
		Session session = sessionFactory.openSession();
		
		//开始事务
		Transaction transaction = session.beginTransaction();
		
		//创建消息对象,并设置属性
		Person person = new Person();
		person.setName("admin");
		person.setWeight(100.5);
		
		//保存消息
		session.save(person);
		//提交事物
		transaction.commit();
		session.close();
		sessionFactory.close();
	}
}

如果在控制台中没有什么问题,并且数据库中加入了admin这条数据的话,说明hibernate已经可以使用了

你可能感兴趣的:(Hibernate)