userdao.java
来自「此程序是有关hibernate多对多例子的完整实例」· Java 代码 · 共 74 行
JAVA
74 行
package org.egplat.hibernate.dao;
import org.egplat.hibernate.db.HibernateSessionFactory;
import org.egplat.hibernate.po.Duty;
import org.egplat.hibernate.po.User;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class UserDao implements IDao{
public void delete(Object o) {
Session s = HibernateSessionFactory.getSession();
Transaction t = s.beginTransaction();
s.delete(o);
t.commit();
}
public Object findByPk(Integer i) {
Session s = HibernateSessionFactory.getSession();
return s.get(User.class, i);
}
public void save(Object o) {
Session s = HibernateSessionFactory.getSession();
Transaction t = s.beginTransaction();
s.saveOrUpdate(o);
t.commit();
}
public void save2() {
Session s = HibernateSessionFactory.getSession();
Transaction t = s.beginTransaction();
User u = (User)s.get(User.class, 2);
Duty d = (Duty)s.get(Duty.class, 1);
u.getDuties().add(d);
t.commit();
}
public void upd2() {
Session s = HibernateSessionFactory.getSession();
Transaction t = s.beginTransaction();
User u = (User)s.get(User.class, 2);
u.getDuties().clear();
Duty d = (Duty)s.get(Duty.class, 2);
u.getDuties().add(d);
t.commit();
}
public void del2() {
Session s = HibernateSessionFactory.getSession();
Transaction t = s.beginTransaction();
User u = (User)s.get(User.class, 2);
Duty d = (Duty)s.get(Duty.class, 2);
u.getDuties().remove(d);
t.commit();
}
public void update(Object o) {
Session s = HibernateSessionFactory.getSession();
Transaction t = s.beginTransaction();
s.update(o);
t.commit();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?