第一个Hibernate小例子

第一个Hibernate小案例


O,  Object  对象
R, Realtion 关系  (关系型数据库: MySQL, Oracle…)
M,Mapping  映射


hibernate就是ORM(对象关系映射)的实现
目的:将对象直接传入数据库,无需经过insert等语句,且不用在insert中


getName()等来进行对数据库的操作。
直接获取和存储一个对象。


注意:

我们的属性个数要和数据库字段的个数一致,且类型要一致。


步骤一:导入需要的jar包



步骤二:创建实体类对象

package cn.itcast.a_hello;

import java.util.Date;

public class Employee {
	private int empId;
    private String empName;
    private Date workDate;
	
     public int getEmpId() {
		return empId;
	}
	public void setEmpId(int empId) {
		this.empId = empId;
	}
	public String getEmpName() {
		return empName;
	}
	public void setEmpName(String empName) {
		this.empName = empName;
	}
	public Date getWorkDate() {
		return workDate;
	}
	public void setWorkDate(Date workDate) {
		this.workDate = workDate;
	}
}


步骤三:配置实体对应的对象映射文件

  命名:对应的实体类名.hbm.xml     这里命名为:Employee.hbm.xml
      这里的hbm可以省略,但是为方便辨识,我们一般加上hbm





步骤四:建立总的hibernate配置文件hibernate.cfg.xml,进行数据库连接配置  和   加载其他实体的配置文件




步骤五:建立一个测试类App
这里我们使用的是通过@Test注解来进行运行,所以要导入import  org.junit.Test;


import java.util.Date;
import org.hibernate.Session;   
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.Test;

public class App {
	  @Test
      public void testHello() throws Exception {
		  //创建一个对象
		Employee employ=new Employee();
		employ.setEmpName("班主任2");
		employ.setWorkDate(new Date());
		//获取加载配置文件的管理类对象
		Configuration config=new Configuration();
		config.configure();  //默认加载 src/hibernate.cfg.xml文件
		//创建session工厂
		SessionFactory sf=config.buildSessionFactory();
		//打开session(代表一个会话,与数据库连接的会话)
		 Session session= sf.openSession();
		 //开启事务
		 Transaction tx=session.beginTransaction();
		 //保存数据库
		 session.save(employ);
		 //提交事务
		 tx.commit();
		 //关闭
		 session.close();
		 sf.close();
		
	}
}


运行一下~



这里我是运行了两次,需要注意一下的是在建表的时候要将id设置为自增长,不然会出现插入了第一次id值为0,再运行进行插入的时候就报错了。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值