SimplePath中字段的java Querydsl 4 StringExpression
我有一个Order
实体,它包含一个OrderCustomer
字段,OrderCustomer
实体有一个Customer
字段
@Document
public class Order {
private OrderCustomer orderCustomer;
}
public class OrderCustomer {
private Customer customer;
}
public class Customer {
private String referenceNumber;
}
由org.springframework.data.mongodb.repository.support.MongoAnnotationProcessor
生成的查询类如下所示:
public QOrder {
public final QOrderCustomer orderCustomer;
}
public QOrderCustomer {
public final SimplePath<Customer> = createSimple("customer", Customer.class);
}
在这种情况下,如何创建谓词来检查Customer.referenceNumber
是否包含来自客户端的任何字符串输入
例如:
QOrder.order.orderCustomer.customer.referenceNumber.contains("anystring")
或者代码生成不正确?应该生成QCustomer吗
我的依赖项版本: querydsl 4.1.4 + spring data mongodb 1.9.5(由spring data releasetrain:Hopper-SR5管理)
# 1 楼答案
要生成
QCustomer
,我必须将@QueryEmbeddable
放在Customer
类型上。我不确定这是一个正确的解决方案