【发布时间】:2014-02-28 10:06:13
【问题描述】:
我有以下 QueryDSL 查询:
List<DTOPerson> names = query.from(p)
.where(p.lastname.like("%smith%"))
.orderBy(p.lastname.asc(), p.firstname.asc())
.list(Projections.bean(DTOPerson.class, p.lastname, p.firstname));
我想要的是这样的:
List<DTOPerson> names = query.from(p)
.where(p.lastname.like("%smith%"))
.orderBy(p.lastname.asc(), p.firstname.asc())
.list(Projections.bean(DTOPerson.class, p.lastname.trim(), p.firstname.trim()));
但是当我这样做时,QueryDSL 给了我这个错误:
java.lang.IllegalArgumentException: Unsupported expression trim(p.lastname)
at com.mysema.query.types.QBean.createBindings(QBean.java:59)
at com.mysema.query.types.QBean.<init>(QBean.java:149)
at com.mysema.query.types.QBean.<init>(QBean.java:138)
at com.mysema.query.types.Projections.bean(Projections.java:51)
有没有办法修剪(所有)字符串结果?
【问题讨论】: