5.3.6. 使用命名参数

5.3.6. 使用命名参数

5.3.6. Using Named Parameters

默认Spring Data JPA使用基于位置的参数绑定,前面的例子都是如此。当有关于参数位置的重构时,会使查询方法容易出现错误。为了解决这个问题,可以在一个方法参数上使用@Param注解,给定一个名称并在查询中绑定这个名称,如下例:

By default, Spring Data JPA uses position-based parameter binding, as described in all the preceding examples. This makes query methods a little error-prone when refactoring regarding the parameter position. To solve this issue, you can use @Param annotation to give a method parameter a concrete name and bind the name in the query, as shown in the following example:

例61. 使用命名参数

Example 61. Using named parameters

public interface UserRepository extends JpaRepository<User, Long> {

  @Query("select u from User u where u.firstname = :firstname or u.lastname = :lastname")
  User findByLastnameOrFirstname(@Param("lastname") String lastname,
                                 @Param("firstname") String firstname);
}

翻译部分版权归YahaCode团队所有。仅供学习研究之用,任何组织或个人不得私自以此用于任何形式的商业目的

发表评论