博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【SSH三大框架】Hibernate基础第一篇:编写第一个Hibernate程序
阅读量:6695 次
发布时间:2019-06-25

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

接下来这几章节学习的是Hibernate,Hibernate的主要作用就是用来和数据库进行连接,简化了JDBC的操作。

首先,我们创建项目,然后把Hibernate的jar包和sqlserver的驱动导入进去。

接下来,我们须要写一个实体类:User

package cn.itcast.hibernate.domain;import java.util.Date;public class User { private int id; //private String name; private String name; private Date  birthday; 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 Date getBirthday() {	return birthday;}public void setBirthday(Date birthday) {	this.birthday = birthday;}}
提供了三个属性:id、name、birthday

然后,我们在User所在的包下,配置User实体类的映射文件:User.hbm.xml

能够看到,我们配置了一个<class>,name属性是这个类的雷鸣,table是要映射的数据库的表

<id><property><property>这三个标签是定义了表中的属性列,当中为id设置了<generator>标签,规定了主键生成的策略(后边会介绍)

接下来,我们就要写配置文件了,在src文件夹下创建:Hibernate.cfg.xml

com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc:sqlserver://localhost:1433;DatabaseName=testhibernate
sa
123456
org.hibernate.dialect.SQLServerDialect
123456
create
true
在这上边配置了数据库驱动、数据库地址及数据库、用户名、密码、sqlserver数据库方言,还有建表方式、是否显示sql语句,最后一个<mapping>是把user.hbm.xml这个映射文件引入进来。

然后,我们写一个測试类实现一下:

package cn.itcast.hibernate;import java.util.Date;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import cn.itcast.hibernate.domain.User;public class Base {	public static void main(String[] args) {		Configuration cfg = new Configuration();		cfg.configure();		SessionFactory sf = cfg.buildSessionFactory();				Session s = sf.openSession();		Transaction tx =  s.beginTransaction();		User u = new User();		u.setBirthday(new Date());		u.setName("name1");				s.save(u);		tx.commit();		s.close();		System.out.println("end");	}}
在这段代码中,首先载入配置文件,然后打开session,再利用session打开事务,然后把user对象保存在session中,提交事务,关闭session。

在Hibernate中,默认是不会插入数据的,仅仅有打开事务才可以插入。

我们执行之后,就能够发现数据库中插入了一条数据。

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

你可能感兴趣的文章
网站故障排查几个简单步骤
查看>>
Android开发实践:掌握Camera的预览方向和拍照方向
查看>>
公司网络搭建及×××到公司配置
查看>>
从传统运维到云运维演进历程之软件定义存储(一)
查看>>
Photoshop绘制植物大战僵尸中的食人花
查看>>
入行后第二份工作的一些感悟
查看>>
创建单IP的***网络
查看>>
服务器最小化安装后的优化脚本
查看>>
SCCM2012 R2集成WSUS服务器-4:部署软件更新组
查看>>
关于 Virtual SAN/VSAN 的常见问题解答
查看>>
揭秘8大自媒体平台注册方法,通过率百分之九十
查看>>
技术和赚钱真的冲突吗?
查看>>
  SEO的十种赚钱方式
查看>>
3C趋势价值对云计算发展的驱动作用
查看>>
Exchange 2016集成ADRMS系列-12:域内outlook 2010客户端测试
查看>>
java开发环境搭建--写给java新手
查看>>
200多个js技巧代码(五)
查看>>
jsp与jspx文件
查看>>
国外知名的开源项目托管网站
查看>>
摈弃 Windows 低效率的工作方式,发掘 Linux 身上的 UNIX 气质
查看>>