博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java-hibernate的Hello World
阅读量:6308 次
发布时间:2019-06-22

本文共 3820 字,大约阅读时间需要 12 分钟。

 hibernate 是对jdbc进行轻量级封装的  orm 框架,充当项目的持久层.

要使用 hibernate首先就需要继续配置,

引包:下载hibernate然后加入jar包

同时引入mysql的jar包

<1> 首先,手动去创建一张测试用的表,这里数据库选择mysql

CREATE TABLE `employee` (`id` int(10) NOT NULL auto_increment,`name` varchar(20) NOT NULL,`email` varchar(20) NOT NULL,`hiredate` date NOT NULL,PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=latin1;

然后去手动录入数据

<2>创建我们的domain对象

建一个包,名为com.sun.domain,在包下建立一个java文件名为:Employee.java

这里面装的都是表里面的所有的字段

package com.sun.domain;public class Employee {	private static final long serialVersionUID = 1L;		private Integer id;	private String name;	private String email;	private java.util.Date hiredate;			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 String getEmail() {		return email;	}	public void setEmail(String email) {		this.email = email;	}	public java.util.Date getHiredate() {		return hiredate;	}	public void setHiredate(java.util.Date hiredate) {		this.hiredate = hiredate;	}}

  <3>在com.sun.domain下创建对象和表的映射关系Employee.hbm.xml

标签下name是domain对象的属性名,
是和该对像属性名相对应的表的字段名

  <4>手动配置我们的hibernate.cfg.xml文件,该文件用于配置 连接的数据库的类型,driver, 对象关系映射文件

com.mysql.jdbc.Driver
jdbc:mysql://127.0.0.1:3306/test
root
123456
true
org.hibernate.dialect.MySQLInnoDBDialect

  <5>写一个手动测试文件,因为hibernate是一个数据库持久层框架,所以,不只有web(j2ee)能用,se也能有使用,这里就用se进行测试

创建一个包com.sun.seriver,在下面创建一个文件Student.java

package com.sun.seriver;import java.util.Date;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import com.sun.domain.Employee;public class Student {	public static void main(String[] args) {		// TODO Auto-generated method stub				Student.delEmpoyee();  //删除//		Student.upEmpoyee();//更新//		Student.selectEmpoyee();//查询//		Student.addEmpoyee();//添加	}	private static void delEmpoyee() {		Configuration cfg=new Configuration();		SessionFactory sf = cfg.configure("hibernate.cfg.xml").buildSessionFactory();		Session session = sf.openSession();		Transaction ts=session.beginTransaction();		Employee emp=(Employee) session.load(Employee.class, 2);		session.delete(emp);		ts.commit();	}	private static void upEmpoyee() {		Configuration cfg=new Configuration();		SessionFactory sf = cfg.configure("hibernate.cfg.xml").buildSessionFactory();		Session session = sf.openSession();		Transaction ts= session.beginTransaction();		Employee emp=(Employee)session.load(Employee.class, 1);		emp.setName("usagi");		ts.commit();	}	//SQL SELECT 	private static void selectEmpoyee() {		Configuration cfg=new Configuration();		SessionFactory sf = cfg.configure("hibernate.cfg.xml").buildSessionFactory();		Session session = sf.openSession();		Employee emp=(Employee) session.load(Employee.class, 2);		System.out.println(emp.getId()+" "+emp.getName()+" "+emp.getEmail());		session.close();	}		//INSERT SELECT 	private static void addEmpoyee() {		Employee s = new Employee();		s.setName("sunzhiyan");		s.setEmail("999@qq.com");		s.setHiredate(new Date());				System.out.println("test is ok");		Configuration cfg=new Configuration();		SessionFactory sf = cfg.configure("hibernate.cfg.xml").buildSessionFactory();		Session session = sf.openSession();		session.beginTransaction();		session.save(s);		session.getTransaction().commit();		session.close();		sf.close();	}		}

  这样,基本的hibernate的基本配置和测试就完成了

 

转载地址:http://jpxxa.baihongyu.com/

你可能感兴趣的文章
oracle表分区详解
查看>>
网络编程中常见结构体
查看>>
SSL/TLS原理详解
查看>>
Docker 自定义SSH服务镜像
查看>>
JavaScript强化教程 —— Cocos2d-JS自动JSB绑定规则修改
查看>>
configure: error: in `/root/httpd-2.2.11/srclib/apr': c
查看>>
CentOS7搭建Kubernetes-dashboard管理服务
查看>>
buildroot下查找外部编译器通过ext-toolchain-wrapper调用的参数
查看>>
MySQL Replication 主主配置详细说明
查看>>
Linux的任务调度
查看>>
在Android studio中添加jar包方法如下
查看>>
iframe 在ie下面总是弹出新窗口解决方法
查看>>
分享10款漂亮实用的CSS3按钮
查看>>
安装nginx 常见错误及 解决方法
查看>>
Gorun8电子商城
查看>>
在之前链表的基础上改良的链表
查看>>
android编译系统makefile(Android.mk)写法
查看>>
MD5源代码C++
查看>>
Eclipse 添加 Ibator
查看>>
Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
查看>>