- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用Spring JPA,并通过使用示例匹配器获取数据列表。
源代码如下:
public Page<TranxLog> findAllByConditions(TranxReportFormModel formModel, Pageable page) {
ExampleMatcher matcher = ExampleMatcher.matching()
.withNullHandler(ExampleMatcher.NullHandler.IGNORE)
.withStringMatcher(ExampleMatcher.StringMatcher.CONTAINING)
.withIgnoreCase()
.withIgnoreNullValues();
Example<TranxLog> example = Example.of(formModel.getTranxLog(), matcher);
return tranxlogRepository.findAll(example, page);
}
formDate
和
toDate
,必须将其与
DateTime
中的字段
TranxLog
进行比较。
.withMatcher()
,但找不到比较日期的方法。
最佳答案
您也可以从JpaSpecificationExecutor进行扩展,并从Example中获取带有QueryByExamplePredicateBuilder的谓词。
在您的存储库中:
public interface TranxlogRepository extends JpaRepository<Tranxlog, Long>, JpaSpecificationExecutor<Tranxlog>{
}
public Specification<TranxLog> getSpecFromDatesAndExample(
LocalDateTime from, LocalDateTime to, Example<TranxLog> example) {
return (Specification<TranxLog>) (root, query, builder) -> {
final List<Predicate> predicates = new ArrayList<>();
if (from != null) {
predicates.add(builder.greaterThan(root.get("dateField"), from));
}
if (to != null) {
predicates.add(builder.lessThan(root.get("dateField"), to));
}
predicates.add(QueryByExamplePredicateBuilder.getPredicate(root, builder, example));
return builder.and(predicates.toArray(new Predicate[predicates.size()]));
}
};
public Page<TranxLog> findAllByConditions(TranxReportFormModel formModel, Pageable page) {
ExampleMatcher matcher = ExampleMatcher.matching()
.withNullHandler(ExampleMatcher.NullHandler.IGNORE)
.withStringMatcher(ExampleMatcher.StringMatcher.CONTAINING)
.withIgnoreCase()
.withIgnoreNullValues();
Example<TranxLog> example = Example.of(formModel.getTranxLog(), matcher);
return tranxlogRepository.findAll(getSpecFromDatesAndExample(from, to, Example.of(formModel.getTranxLog(), matcher)), page);
}
关于Spring JPA ExampleMatcher比较日期条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45973070/
我有一个具有多个属性路径的实体。我使用了“按示例查询”和“ExampleMatcher”来忽略某些属性路径。 我的实体如下图所示 员工类 private Integer id; private Str
如何实现 ExampleMatcher,从我的类中随机匹配一个属性并忽略其他属性? 假设我的类(class)是这样的: Public Class Teacher() { String id;
在Java中,我可以使用ExampleMatcher函数来创建具有搜索/过滤功能的查询。 c#.net core 中的函数是否等效。目前,我正在使用 Entityframework 核心。 谢谢 ja
我想要的是使用Examplematcher和Spring的Examples来过滤和搜索乐谱。这一切并不像我想象的那么顺利。我希望你知道解决方案是什么,因为我被困在它上面。这是一个 Spring Boo
如何使用ExampleMatcher使用JPQL自定义查询? 我正在尝试从父级大小中检索子级。因为我不允许在子端添加其他方法。 我需要过滤和分页来显示子项,因为子项包含如此多的行数据。 这是我的存储库
客户端型号: @Entity public class Client { @Id private Integer id; @OneToOne(mappedBy = "clien
我是一名优秀的程序员,十分优秀!