第一个简单的hibernate小例子


一直在用mybatis.因为要写很多表的联合查询语句。

听很多人说起hibernate。说是封装的如何好之类。

于是想学习一下。

网上搜的例子在我这各种报错:log4j的,Configuring ehcache from ehcache-failsafe.xml 等。

最后费了老劲终于让程序走通-----还是hibernate jar包的问题。


于是决定把做的程序呈现出来,最重要的是把jar包提供给跟我一样被各种下载坑出翔的人。


1.建立java项目。

2.引入jar包----hibernate核心包和oracle驱动包。

关于oracle驱动包:我的jdk是1.6,我引用ojdbc5.jar或者ojdbc6.jar 都可以。(有人说如果jdk是1.5,那么不能用ojdbc6.jar,我没试过,不知道真假。)  如果你的机器安装了oracle,那么oracle驱动在这个目录下:D:\app\Administrator\product\11.2.0\dbhome_1\jdbc\lib。

hibernate包下载.点击打开链接.  oracle驱动下载点击打开链接

3.本项目用的数据库是oracle.  用到的表是 user1

create table USER1
(
  ID       VARCHAR2(110),
  USERNAME VARCHAR2(11),
  PASSWORD VARCHAR2(11)
)



一。程序目录:

第一个简单的hibernate小例子_第1张图片

  

1.建立User类。

package d;


public class User {
	 private String id;
   private String username;
   private String password;
public String getUsername() {
	return username;
}
public void setUsername(String username) {
	this.username = username;
}
public String getPassword() {
	return password;
}
public void setPassword(String password) {
	this.password = password;
}
public String getId() {
	return id;
}
public void setId(String id) {
	this.id = id;
}
}

2.在package d下建立User.hbm.xml 。



	

	
		
			
		
		
		
		
	

3. 配置hibernate.cfg.xml文件



 

  true
  
org.hibernate.dialect.Oracle9Dialect

  

oracle.jdbc.driver.OracleDriver

  

jdbc:oracle:thin:@localhost:1521:orcl

  
system

  manager

 



4.在src目录下建立log4j.properties

如果缺少log4j.properties ,会引起警告

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

log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

5.建立ehcache.xml 文件。

如果缺少ehcache.xml ,会引起警告

 WARN [net.sf.ehcache.config.Configurator] - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/C:/Users/Administrator/Desktop/hibjar/ehcache-1.1.jar!/ehcache-failsafe.xml




    
    


    

    




6.建立Client类。尝试保存数据。

package d;

import java.util.Date;

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

public class Client {
	public static void main(String[] args) {
		//读取配置文件
		Configuration cfg = new Configuration().configure();
		
		SessionFactory factory = cfg.buildSessionFactory();
		
		Session session = null;
		try{
			session = factory.openSession();
			//开启事务
			session.beginTransaction();
			
			User user = new User();
			user.setUsername("用户名");
			user.setPassword("123");
		
			session.save(user);
			//提交事务
			session.getTransaction().commit();
			
		}catch(Exception e){
			e.printStackTrace();
			//回滚事务
			session.getTransaction().rollback();
		}finally{
			if(session != null){
				if(session.isOpen()){
					//关闭session
					session.close();
				}
			}
		}
	}
}


运行Client 为java application 。

控制台出现Hibernate: insert into user1 (username, password, id) values (?, ?, ?)。表示插入了一条语句。


该文章参考了http://blog.csdn.net/aboy123/article/details/10085635   

新手上路之Hibernate:第一个Hibernate例子






你可能感兴趣的:(框架)