java - Spring jdbcTemplate 将常量值传递给查询方法

标签 java spring spring-data-jpa jdbctemplate

是否可以在函数中将值指定为常量。我有一个实体,EntityClass。然后是一个存储库接口(interface),比如

interface EntityClassRepository extends CrudRepository<EntityClass, String> {

List<EntityClass> findById(String id);
}

我可以在方法中硬编码一些值,例如,

List<EntityClass> findByIdAndActiveFlagAsY(String id);

仅查询 Activity 标志列值为'Y'的那些。

可能吗?

最佳答案

不,Spring Data不支持方法名称中的AS关键字,您可以检查所有Supported keywords inside method names :

Supported keywords CrudeRepository

<小时/>

因此,要解决您的问题,您可以使用自定义查询:

@Query("from EntityClass e WHERE id = :id AND ActiveFlag = 'Y'")
public List<EntityClass> findByIdAndActiveFlagAsY(@Param("id") String id);

或者您可以使用 Equals 关键字,但您应该在方法中发送值:

@Query("from EntityClass e WHERE id = :id AND ActiveFlag = :flag")
public List<EntityClass> findByIdAndActiveFlagEquals(@Param("id") String id, @Param("flag") String flag);

关于java - Spring jdbcTemplate 将常量值传递给查询方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47090132/

相关文章:

java - 我无法使用 spring security 登录

java - 如何在hql中同时检索数据和数据计数?

java - JPA 使用 Spring Data Specification 进行删除和更新

java - 使用 spring-data 进行延迟评估

java - Hibernate问题-映射ArrayList

java - DocuSign 异常处理

java - 与整数 : result is only zero - Java 的运算

java - 如何了解用户在 Spring security 中拥有的所有角色

在 JAX-RS 中发送数据时出现 java.lang.ClassCastException

java - 当 url 模式是路径时,无法让 Spring MVC 调度程序正常工作