开发第一个hibernate例子
1、导入hibernate所需的jar包,导入JDBC连接的驱动包
<?xml version="1.0"?>
⑤id标签和property标签中column属性可以省略,省略时生成的数据库表默认与实体类属性相同。
⑥property标签type属性,设置生成表字段的类型,可以省略,会自动对应类型。
4、Hibernate的核心配置文件的编写
Hibernate配置文件名为:hibernate.cfg.xml,一般不要修改名称,并放在src目录下,该文件的主要目的是为了连接到数据库。
以MySql为例:
<?xml version="1.0" encoding="UTF-8"?>
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
rootrootorg.hibernate.dialect.MySQLDialecttruetrue
// 第一步 加载hibernate核心配置文件
//在src下面找到hibernate.cfg.xml
Configuration cfg = new Configuration().configure();
// 第二步 获取sessionFaction对象,读取hibernate核心配置文件,创建SessionFactory
// 根据映射关系,在配置的数据库里创建表
SessionFactory sf = cfg.buildSessionFactory();
// 第三步 获取session对象
//类似于连接
Session session = sf.openSession();
//第四步 开启事务
Transaction ts=session.beginTransaction();
//第五步 增删改查
User user = new User();
user.setUsername("小一");
user.setPassword("123");
session.save(user);
//第六步 提交事务
ts.commit();
//第七步 关闭资源
session.close();
sf.close();
Hibernate 5 个核心接口:
①Configuration接口:加载hibernate核心配置文件,在src下面找到hibernate.cfg.xml,把配置文件放到对象里面。
Configuration
cfg=new
Configuration().configure();
②SessionFactory接口:创建sessionFaction对象,读取hibernate核心配置文件,根据核心配置文件中数据库的配置、映射关系,在数据库里创建表。
SessionFactory sf=cfg.buildSessionFactory();
创建SessionFactory的过程中,这个过程是消耗资源,性能低,一般在Hibernate操作中一个项目创建一个SessionFactory对象。(写一个工具类,写静态代码块实现。)
public class HibernateUtil{
static Configuration cfg = null;
static SessionFactory sf = null;
static{
cfg = new Configuration().configure();
SessionFactory sf = cfg.buildSessionFactory();
}
public static SessionFactory getSessionFactory(){
return sf;
}
}
③Session接口:类似于jdbc中的connection。单线程对象,session对象不能共用。
Sessionsession=sf.openSession();
保存:save方法、修改:update方法、删除:delete方法、查询:根据id用get方法。
④Transaction接口:管理事务。
Transaction ts=session.beginTransaction();
ts.commit();//提交事务
ts.rollback();//事务回滚