关于hibernate多对多中间表的查询

[复制链接]
查看11 | 回复2 | 2011-2-12 13:02:40 | 显示全部楼层 |阅读模式
多对多中间表一般不用这种处理方式,首先中间表是没有唯一的主键作为标识,更新信息的时候,hibernate可能出现错误更新或者异常。通常反向工程的时候不选择中间表,next以后勾选一个many-to-many的选项(让myeclimpse自动去嗅探多对多关系,然后分解成2个一对多的关系)。生成的pojo类里面就会比原有的pojo类多一个集合。比如,User类里面会有一个Role类的set集合,Role类里面有一个User类的set集合。直接用hibernate获取到指定的user,程序里面foreach迭代一下set集合,OK....建议LZ去补下hibernate里面有关级联的知识。...
回复

使用道具 举报

千问 | 2011-2-12 13:02:40 | 显示全部楼层
Query query = this.getSession().createQuery("from UserRole as a where a.id.user.userId = ?");
List list = query.list();这样试一下,把?替成具体的值。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行