关于Hibernate多对多关系中查询中间表的问题 10
user和role是多对多的关系,他们产生了个中间表userRole。user的属性有userId,userName等等,role的属性有id,name。userRole...
user和role是多对多的关系,他们产生了个中间表userRole。user的属性有userId,userName等等,role的属性有id,name。userRole有两个属性,一个是user_id对应user的userId,一个是role_id对应的是role的id。
我是用的反向工程,生产的POJO类一共有四个。User.java对应user表,Role.java对应role表。还产生了一个UserRoleId.java,里面有两个属性:user和role。UserRole.java里面只有一个属性:返回值为UserRoleId的id。
现在我知道一个确切的userId的值,想要运用HQL查询对应的一条中间表的记录。我是这么写的:
this.getHibernateTemplate.find("from UserRole as a where a.id.user.userId = ?",userId);可是查询到的却是空值,哪位高手可以告诉我应该如何操作呢?感激不尽,3Q~~ 展开
我是用的反向工程,生产的POJO类一共有四个。User.java对应user表,Role.java对应role表。还产生了一个UserRoleId.java,里面有两个属性:user和role。UserRole.java里面只有一个属性:返回值为UserRoleId的id。
现在我知道一个确切的userId的值,想要运用HQL查询对应的一条中间表的记录。我是这么写的:
this.getHibernateTemplate.find("from UserRole as a where a.id.user.userId = ?",userId);可是查询到的却是空值,哪位高手可以告诉我应该如何操作呢?感激不尽,3Q~~ 展开
1个回答
展开全部
先在数据库里查一下啊
select user_id from UserRole a where a.userId = 1
如果有的话 再抄过来. 这个实体类 应该不会下面还有个实体类 实体类下面还有个实体类..
所有 a.id.user.userid 是错的
应该是 a.user.userid
你试试this.getHibernateTemplate.find("from UserRole as a where a.user.userid
= ?",userId);
select user_id from UserRole a where a.userId = 1
如果有的话 再抄过来. 这个实体类 应该不会下面还有个实体类 实体类下面还有个实体类..
所有 a.id.user.userid 是错的
应该是 a.user.userid
你试试this.getHibernateTemplate.find("from UserRole as a where a.user.userid
= ?",userId);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询