Hibernate 配置

 Hibernate为操作数据库提供了一系列的API,为了能够准确的使用这些API,要在开发环境里要做很多的环境配置,归结起来有几个重要步骤:

 A. 导入正确版本的jar包(hibernate提供的Jar包、数据库驱动包、日志文件包)

 B. 编写配置文件(Hibernate配置文件、日志文件配置

 

笔者将Hibernate的配置做一下详细描述,大家根据步骤来,是可以成功配置Hibernate的:

第一步:准备环境

              笔者的环境如下:

             1. MyEclipse 8.6 ,请从这里下载myeclipse-8.6.0-win32.exe

                   下载后,双击exe文件,按照安装向导完成MyEclipse的安装。

             2. hibernate-distribution-3.3.2.GA-dist,请从这里下载hibernate-distribution-3.3.2.GA-dist.zip

                  解压压缩包文件,解压后的文件结构如下,这么多文件,其实我们只是需要红色框里的jar文件。

             3. Oracle 10g/11g(可共用) 数据库驱动包,请从这里下载oracle11g驱动jar包.zip

                  解压压缩包文件,里面包含三个文件:classes12.jar、ojdbc5.jar、ojdbc6.jar,在hibernate使用ojd bc5.jar或ojdbc6.jar。

                  注意:请不要使用classes12.jar包,使用classes12.jar的话,hibernate会报错。

             4. log4j日志文件jar包,请从这里下载log4j-1.2.15.jar

             5. slf4j-log4j12-1.5.8.jar文件, 该文件是hibernate的日志接口文件也是必须的,请从这里下载slf4j-log4j12-1.5.8.jar

             6. Oracle11g数据库,有关这方面的环境,请参看本人的博客文章Win7/8下Oracle的安装

第二步:创建Java Application项目,导入相应的jar包

             1. 打开MyEclipse开发工具,新建 Java Application项目,项目取名为:HelloHibernate

             2. 为了方便导入所需要的jar包,在D盘新建文件夹HibernateJars ,将需要的jar文件都放入到该文件夹下。

                 主要有数据库驱动包、Hibernate核心包、Hibernate在lib\required文件下的所有jar文件、日志包,如下图所示:

             3. 在MyEclipse开发环境中导入这些Jar文件,右击项目HelloHibernate --> Build Path --> Add External Archives,选择HibernateJars文件夹下的所有jar包,一次性导入。

                 -----------------------可以说到此已成功了一半。-----------------------------------------------------------------------                   

第三步:编写配置文

             1. 在src下新建entity包,在entity包下编写实体类Student ,包含3个重要属性(int Id、String Name、int Age)   

       
package entity;

public class Student {
	int id;
	String name;
	int age;

	public int getId() {
		return id;
	}

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

	public String getName() {
		return name;
	}

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

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}
}

              2. 同样在entity包下面创建Student.hbm.xml配置文件,该配置文件说明了实体类和数据库之间的对应关系。

                 


  
  


  
  
  
   
   
    
    
      
    
    
     
     
         
     
     
      
    
    
      
    
    
    
    
      
    
    
    
    
   
   
   

  
   

              3. 在src目录下创建hibernate.cfg.xml,这个文件名是固定的,由Hibernate框架自动加载,主要是数据库的配置信息

                 


  
  


  
  
	
   
   
		
    
    
		
    
    
     
     oracle.jdbc.driver.OracleDriver
    
    
		
    
    
		
    
    
     
     jdbc:oracle:thin:@localhost:1521:orcl
    
    
		
    
    
		
    
    
     
     system
    
    
		
    
    
		
    
    
     
     sa
    
    
		
    
    
		
    
    
     
     org.hibernate.dialect.Oracle10gDialect
    
    
		
    
    
		
    
    
     
     create
    
    
		
    
    
		
    
    
	
   
   

  
  

              4. 在src目录下创建文件log4j.properties,是Log4j所需的配置信息,具体内容如下:

                 

#日志级别和输出日志形式
log4j.rootLogger=OFF,console,console  
#输出级别(OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL),输出位置1、输出位置2...
#控制台输出 
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d %p [%c] - %m%n

              到此配置已经全部结束,最终的文件结构如下:

 

第四步:测试

              1. 编写测试Test.java,代码如下:

                 

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

import entity.Student;

public class Test {
	public static void main(String[] args) {
		Configuration conf = new Configuration();
		conf.configure();//根据配置文件,创建相应的对象 
		SessionFactory fac= conf.buildSessionFactory();
		Session s= fac.openSession();//为这次 操作创建一个会话,以便数据的跟踪与维护      
		Transaction trans= s.beginTransaction();//开启事物
		Student stu=new Student();//创建学生对象
		stu.setAge(20);
		stu.setName("jack");
		s.save(stu); //将数据添加到数据库
		trans.commit();//提交事物
		s.close();//关闭会话
		System.out.println("OK");//打印测试结果
	}
}

              2. 运行结果

                            

 

             总结:作为初学者难免会遇到各种问题,出现问题是一定要认真查看错误原因,一般来讲常见的错误有几种

                    1. jar包的版本没有与Hibernate的版本吻合

                    2. oracle驱动包导入错误,例如:会习惯性导入classes12.jar文件而不是ojdbc5.jar,实际上要导入ojdbc5.jar

                    3. log4j-1.2.15.jar和slf4j-log4j12-1.5.8.jar 没有导入,也会导致错误

                    4. 在项目下,缺少log4j.properties日志配置文件

                    5. hibernate.cfg.xml和log4j.properties不在src目录下,也会导致Hibernate运行错误 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智学无忧-老曹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值