public class User {
private Integer id;
private String name;
private String password;
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 getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public User(Integer id, String name, String password) {
this.id = id;
this.name = name;
this.password = password;
}
public User() {
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", password='" + password + '\'' +
'}';
}
}
public interface UserDao {
public boolean add(User user);
public boolean delete(Integer id);
public boolean update(User user);
public User get(Integer id);
}
public class UserDaoImpl implements UserDao {
SessionFactory sessionFactory = HibernateUtils.getSessionFactory();
Session session = sessionFactory.openSession();
Transaction tx = null;
@Override
public boolean add(User user) {
try {
tx = session.beginTransaction();// 4、开始一个事务
session.save(user);
tx.commit();// 6、 提交事务
} catch (Exception e) {
e.printStackTrace();
tx.rollback();
return false;
} finally {
session.close();
}
return true;
}
@Override
public boolean delete(Integer id) {
try {
tx = session.beginTransaction();// 4、开始一个事务
User user = session.get(User.class, id);
if (user == null) {
return false;
}
session.delete(user);
tx.commit();// 6、 提交事务
} catch (Exception e) {
e.printStackTrace();
tx.rollback();
return false;
} finally {
session.close();
}
return true;
}
@Override
public boolean update(User user) {
try {
tx = session.beginTransaction();// 4、开始一个事务
if (user == null) {
return false;
}
session.update(user);
tx.commit();// 6、 提交事务
} catch (Exception e) {
e.printStackTrace();
tx.rollback();
return false;
} finally {
session.close();
}
return true;
}
@Override
public User get(Integer id) {
User user = null;
try {
tx = session.beginTransaction();// 4、开始一个事务
user = session.get(User.class, id);
if (user == null) {
return null;
}
tx.commit();// 6、 提交事务
} catch (Exception e) {
e.printStackTrace();
tx.rollback();
return null;
} finally {
session.close();
}
return user;
}
}
public class HibernateUtils {
private static SessionFactory sf;
static {
try {
Configuration con = new Configuration().configure();
sf = con.buildSessionFactory();
} catch (Exception e) {
e.printStackTrace();
}
}
public static SessionFactory getSessionFactory() {
return sf;
}
public void closeSessionFactory() {
sf.close();
}
}
public class Test {
public static void main(String[] args) {
SessionFactory sessionFactory = HibernateUtils.getSessionFactory();
Session session = sessionFactory.openSession();
}
private UserDaoImpl userDao = new UserDaoImpl();
@org.junit.Test
public void addTest() {
User user = new User();
user.setId(1);
user.setName("刘耀鹏");
user.setPassword("110");
boolean add = userDao.add(user);
if(add) {
System.out.println("添加成功");
} else {
System.out.println("添加失败");
}
}
@org.junit.Test
public void updateTest() {
User user = new User();
user.setId(1);
user.setName("刘耀鹏1");
user.setPassword("119");
boolean update = userDao.update(user);
if(update) {
System.out.println("更新成功");
} else {
System.out.println("更新失败");
}
}
@org.junit.Test
public void getTest() {
User user = userDao.get(1);
System.out.println(user.toString());
}
@org.junit.Test
public void deleteTest() {
boolean delete = userDao.delete(1);
if(delete) {
System.out.println("删除成功");
} else {
System.out.println("删除失败");
}
}
}
添加数据:
更新数据:
更新后查询数据:
删除数据: