List<String> tempList = new ArrayList<>();
tempList.add("Warning");
Path path = root.get("traceLevel");
Predicate inP = path.in(tempList);
和jpa标准:
Parameter value [Warning] did not match expected type [com.getknowledge.platform.modules.trace.trace.level.TraceLevel (n/a)]
当然我遇到了问题
global $wpdb, $post;
// Query
$query = sprintf("SELECT comment_author_email
FROM {$wpdb->comments}
JOIN {$wpdb->posts} ON {$wpdb->posts}.ID = {$wpdb->comments}.comment_post_ID
WHERE comment_post_ID = %d AND comment_approved = '1'",
$post->ID);
$emailslist = $wpdb->get_col($query);
$emailslist = array_unique($emailslist);
// get all emails
print_r($emailslist);
由于过滤器的数据来自客户端,并且在基本级别进行处理,因此将字符串转换为枚举我无法做到。问题是,我可以使用字符串构建查询。
答案 0 :(得分:0)
每个enum
都有一个函数valueOf
,它接受String
并返回适当的常量。而不是
List<String> tempList = new ArrayList<>();
tempList.add("Warning");
使用
List<TraceLevel> tempList=new ArrayList<>();
tempList.add(TraceLevel.valueOf("Warning"));