Hibernate多对多注解配置实例

来源:互联网 发布:刘德华谁人知国语版 编辑:程序博客网 时间:2024/06/10 21:20

hibernate多对多注解配置


角色 实体类

   /*Role.java*/    @ManyToMany(mappedBy = "roles",fetch = FetchType.LAZY)    Set<User> users = new TreeSet<>();

用户 实体类

    /*User.java*/    @ManyToMany(fetch = FetchType.LAZY)    private Set<Role> roles = new TreeSet<>();

角色 DAO 实现类

该方法实现通过一组角色id删除角色 , 在删除之前从拥有该角色的用户中删除该角色

/*RoleDaoImpl.java*/    @Override    public boolean deleteRolesByIdList(List<String> idList) {        Session session = factory.getCurrentSession();        idList.stream().map(this::getRoleById).forEach(r -> {                r.getUsers().stream().forEach(u -> u.getRoles().remove(r));                session.delete(r);        });        return true;
1 0
原创粉丝点击