@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd-MM-yyyy", timezone = "Asia/Kolkata")
private Date activationDate;
Run Code Online (Sandbox Code Playgroud)
从上面的 java 代码中,我想使用以下方法将时区值设置为当前系统时区: TimeZone.getDefault().getID() - 它返回的值是“Asia/Kolkata”
但是如果我将此代码设置为 json 格式
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd-MM-yyyy", timezone = TimeZone.getDefault().getID())
Run Code Online (Sandbox Code Playgroud)
我收到类似“注释属性 JsonFormat.timezone 的值必须是常量表达式”之类的错误
请帮我解决这个问题。
提前致谢,毗湿奴
这里使用Spring JPA规范的IN标准查询工作正常.但我不知道如何使用"NOT IN"..
那么我如何使用Spring JPA规范使用NOT IN条件查询.
SearchSpecification<User> spec = new CommonSpecification<Case>(new SearchCriteria("client.id", Operator.NOT_IN, clientIdList));
@Override
public Predicate toPredicate(Root<T> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
Predicate predicate = null;
switch (searchCriteria.getOperator()) {
case IN:
if (searchCriteria.getValue() instanceof List<?>) {
predicate = getFieldPath(searchCriteria.getKey(), root)
.in(((List<?>) searchCriteria.getValue()).toArray());
}
break;
case NOT_IN:
//What to do???
break;
default:
break;
}
return predicate;
}
private Path<Object> getFieldPath(String key, Root<T> root) {
Path<Object> fieldPath = null;
if (key.contains(".")) {
String[] fields = key.split("\\.");
for (String field : …Run Code Online (Sandbox Code Playgroud)