Hibernate5.2 整合Spring4 后的Dao层操作

Hibernate5之后,原来许多旧的方法都被废止了。以下送Hibernate5之后新的Dao层操作。

@Repository("userdao")
public class UserDao {

    @Resource
    private SessionFactory sessionFactory;

    private Session getSession() {
        return this.sessionFactory.getCurrentSession();
    }

    //获取User中的所有记录
    public List<User> getUserAll() {
        @SuppressWarnings("unchecked")
        TypedQuery<User> query = this.getSession().createQuery("from User");
        return query.getResultList();
    }

    //根据Id进行查询
    public User getUserById(long id) {
        return this.getSession().get(User.class, id);
    }

    //增加一条新的记录
    public void saveUser(User user) {
        this.getSession().save(user);
    }

    //更新一条记录
    public void updateUser(User user) {
        this.getSession().update(user);
    }

    //根据id进行删除
    public void deleteUserById(long id) {
        Session session = this.getSession();
        User user = session.byId(User.class).load(id);
        session.delete(user);
    }
}

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注