基于hibernate实现的jpa接口,multiselect怎么不起作用-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

基于hibernate实现的jpa接口,multiselect怎么不起作用

2016-02-29 16:47:11 3890 0

之前问过一次,没有人回答。。。。,再来问多一次~

使用jpa的仓库接口来查询数据,本意是根据条件来查询一个实体的指定属性字段,但是现在却把这个实体的所有属性都查出来了。问问大神们怎么解决。采用的是实现JpaSpecificationExecutor接口:代码如下:


?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Specification spec = new Specification() {

@Override
public Predicate toPredicate(Root<Users> root, CriteriaQuery<?> query,CriteriaBuilder cb) {
    // TODO Auto-generated method stub
    List<Predicate> ps = new ArrayList<Predicate>();
    ps.add(cb.equal(root.<String>get("userName"), userName));
       
    List<Selection<?>> selections = new ArrayList<Selection<?>>();
    selections.add(root.get("id").alias("id"));
    selections.add(root.get("birth").alias("birth"));
    selections.add(root.get("userName").alias("userName"));
       
       
    query.multiselect(selections);
       
    query.where(ps.toArray(new Predicate[ps.size()]));
    return query.getGroupRestriction();
}

};

return repository.findOne(spec);

预期是查到id,birth,userName的,现在却是这样:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Hibernate:

select
    users0_.id as id1_22_,
    users0_.create_time as create_t2_22_,
    users0_.update_time as update_t3_22_,
    users0_.version as version4_22_,
    users0_.birth as birth5_22_,
    users0_.gendar as gendar6_22_,
    users0_.password as password7_22_,
    users0_.status as status8_22_,
    users0_.user_name as user_nam9_22_ 
from
    users users0_ 
where
    users0_.user_name=?

我已经multiselect里设置了,为什么还是这样。。。望解答

在网上找了很多都说是在multiselect里用root设置自己要查询的字段属性,可是根本没效果啊~~~

取消 提交回答
全部回答(0)
相关问答

2

回答

canal监听MySQL一个canal实例会耗费多少资源?

2022-05-08 21:27:31 1156浏览量 回答数 2

0

回答

请问java持久层框架Hibernate和Mybatis性能对比该如何选择?请给出对比方案以用于技术

2021-11-12 17:20:09 362浏览量 回答数 0

1

回答

Hibernate怎么实现延迟加载?

2021-10-27 12:01:22 191浏览量 回答数 1

1

回答

使用Hibernate的优点是什么?

2021-10-20 22:36:27 213浏览量 回答数 1

1

回答

Hibernate 的 JPA事务问题?报错

2020-06-22 17:05:57 424浏览量 回答数 1

1

回答

hibernate报错Caused by: java.sql.SQLExcept?400报错

2020-06-06 16:47:08 304浏览量 回答数 1

1

回答

使用JDK生成自证书,cas报错"No subject alternative ?400报错

2020-06-07 22:18:51 498浏览量 回答数 1

1

回答

使用JDK生成自证书,cas报错"No subject alternative ?400报错

2020-06-07 22:18:20 290浏览量 回答数 1

0

回答

Multi-label Graph Analysis and Computations Using GraphX

2018-05-27 18:41:05 941浏览量 回答数 0

1

回答

hibernate的多对一,一对多,多对多,一对一怎么理解?

2016-06-02 13:51:24 2051浏览量 回答数 1
+关注
2
文章
9426
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载