Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring data 如何通过实体的字符串集合值查询实体,如_Spring Data_Spring Data Jpa_Filtering_Javax.persistence - Fatal编程技术网

Spring data 如何通过实体的字符串集合值查询实体,如

Spring data 如何通过实体的字符串集合值查询实体,如,spring-data,spring-data-jpa,filtering,javax.persistence,Spring Data,Spring Data Jpa,Filtering,Javax.persistence,我拥有以下实体: @Entity public class SystemLogEntity implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) private long id; private long creationTime; private String thread; private int severity; @Lob

我拥有以下实体:

@Entity
public class SystemLogEntity implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;
    private long creationTime;
    private String thread;
    private int severity;
    @Lob
    private String message;
    @ElementCollection(fetch = FetchType.EAGER)
    @Lob
    private List<String> stacktrace;

    ...
}
对于
SystemLogEntity
的简单字段,这可以正常工作,
谓词
是直接的

此外,如果我筛选集合中的确切项,则
谓词仍然是直接的(
中的

但是,如何在堆栈跟踪集合项之后过滤我的
SystemLogEntity
,该堆栈跟踪集合项类似于给定值

换句话说,我想在术语
NullpointerException
之后过滤
SystemLogEntity
。使用
谓词
,这可能吗?

我希望这能起作用:

规范stacktraceLike(字符串stacktrace){
return(root,query,cb)->cb.like(root.join(“stacktrace”),“%”+stacktrace+“%”;
}

更多…

正是这一点。谢谢
@Repository
public interface SystemLogRepository extends JpaRepository<SystemLogEntity, Long>, JpaSpecificationExecutor<SystemLogEntity> {

     public List<SystemLogEntity> findAll(Specification spec);
}