一 先介绍hibernate实体类的 增删改查 操作
1 添加
调用session.save()方法实现
2 查询 根据id
调用 session.get() 方法实现
3 修改
先查询,后修改
4 删除操作
调用 session.delete() 方式实现
二 hibernate中实体类:瞬时态、持久态、托管态 的介绍和实现
1 瞬时态 : 对象里面没有id值,对象与session没有关联,一般做添加操作
2 持久态 : 对象里面有id值,对象与session关联
3 托管态 : 对象有id值,对象与session没有关联
三 演示操作实体类对象的方法
session.saveOrUpdate():实现添加、修改方法
1 实体类对象状态是 瞬时态,做添加操作
2 实体类对象状态是 托管态,做修改
3 实体类对象状态是 持久态,做修改
创建的 HibernateUtils 工具类
public class HibernateUtils {
static Configuration cfg = null;
static SessionFactory sessionFactory = null;
//静态代码块实现
static{
//记载核心配置文件
cfg = new Configuration();
cfg.configure();
sessionFactory = cfg.buildSessionFactory();
}
//根据方法返回sessionFactory
public static SessionFactory getSessionFactory(){
return sessionFactory;
}
}
创建的User实体类
public class User {
/*hibernate要求实体类有一个属性唯一的*/
private int uid;
// private String uid;
private String username;
private String password;
private String address;
public int getUid() {
return uid;
}
public void setUid(int uid) {
this.uid = uid;
}
/* public String getUid() {
return uid;
}
public void setUid(String uid) {
this.uid = uid;
}*/
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 getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "User{" +
"uid=" + uid +
", username='" + username + '\'' +
", password='" + password + '\'' +
", address='" + address + '\'' +
'}';
}
}