ssh,属性设置了,但是最后结果没有update到数据库里

李灵晖 2013-07-10 11:14:39
ssh,属性设置了,但是最后结果没有update到数据库里

代码:(代码因为比较长,所以给出部分)

Role.java
	
//hibernate 关联Privileage
@ManyToMany(mappedBy = "roles",fetch=FetchType.EAGER)
public Set<Privilege> getPrivileges() {
return privileges;
}


Privileage.java


//hibernate 关联Role
@ManyToMany
public Set<Role> getRoles() {
return roles;
}



RoleAction.java


/**
* 设置权限
*
* @return
*/
public String setPrivilege() {
//得到role
Role role = roleService.getById(model.getId());
//得到privileges
List<Privilege> privileges = privilegeService.getByIds(privilegeIds);
//设置privileges
role.setPrivileges(new HashSet<Privilege>(privileges));
roleService.update(role);
return "toList";
}


但是最后的sql语句却没有出现privileges 属性的更新
Hibernate:

update
Role
set
description=?,
name=?
where
id=?


谢谢
...全文
132 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
滴水石穿 2013-07-11
  • 打赏
  • 举报
回复
事务啊 commit
李灵晖 2013-07-10
  • 打赏
  • 举报
回复
李灵晖 2013-07-10
  • 打赏
  • 举报
回复
http://pan.baidu.com/share/link?shareid=2929403883&uk=1963883989 这是我的源程序,具体可以参考一下
李灵晖 2013-07-10
  • 打赏
  • 举报
回复
引用 1 楼 cowfishy 的回复:
多对多需要建立联合主键的对象 而且你的代码里面Many2Many在数据库里面没有第三张的映射表么?
他是默认生成映射表,数据库里面有privilege_role的表,是用来关联主键的
balabala_sean 2013-07-10
  • 打赏
  • 举报
回复
多对多需要建立联合主键的对象 而且你的代码里面Many2Many在数据库里面没有第三张的映射表么?

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧