gpt4 book ai didi

querydsl - 使用自定义方法将 StringPath 转换为 DataPath

转载 作者:行者123 更新时间:2023-12-02 19:23:59 29 4
gpt4 key购买 nike

如何使用自定义函数和选定值将 StringPath 转换为 DatePath?

我希望在自定义谓词中使用数据库中的值,如下所示

public static Predicate hasBirthdateGreaterOrEqual(String from) {

//how to convert this to String and pass to PeselParser(String value)
StringPath peselValue = QEmployee.employee.employment.person.peselValue;

LocalDate employeeDate = new PeselParser(peselValue).getDate();

DateExpression<LocalDate> expression = DateTemplate.create(LocalDate.class, from);
return expression.goe(employeeDate);
}

最佳答案

使用DateTemplatecreate(Class<T> type, String template, Object one)方法。根据您的 RDBMS,您将需要更改以下内容 template字符串。我以 Oracle 为例:

DateTemplate.create(LocalDate.class, "TO_DATE({0}, 'DD/MON/YYYY')", from);

我发现您正在使用版本 3 语法。 Querydsl 4 已经发布有一段时间了。我会考虑升级。我们已经为一个大型报告项目做到了这一点,实际上并不太痛苦。在querydsl 4中,我相信你会使用Expressions.dateTemplate .

关于querydsl - 使用自定义方法将 StringPath 转换为 DataPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32333735/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com