jpa ?1 /?2 意义

这里的入参nodeId对应占位符?1,入参severity对应?2;缺点是,序号必须是顺序的,按参数顺序严格对应

// 根据名字进行精准查询,Standard类中有name字段
 User findByName(String name);
 // 根据名字进行模糊查询
 User findByNameLike(String name);
 // 查询名字为空的数据
 List findByNameIsNull();
 // 多条件查询
 User findByNameAndPassword(String name,String password);
// 使用JPQL进行非标准命名查询
 @Query("from User u where u.name like ?")
 User findByNamexxxxxLikeJPQL(String name);
 // 使用JPQL进行非标准多条件查询
 // 默认情况下,问号的顺序和传入的参数顺序是一致的
 // 可以在问号后面追加数字,改变和参数的匹配顺序
 // 下面的示例中,传入的第一个参数匹配到第二个问号,传入的第二个参数匹配到第一个问号
 @Query("from User u where u.name like ?2 and password = ?1")
 User findByNameAndOperatorJPQL(String password,String name);
 // 使用标准SQL进行非标准命名查询
 @Query(value = "select * from user u where u.name like ?", nativeQuery = true)
 User findByNamexxxxxLikeSQL(String name);

 

你可能感兴趣的:(jpa ?1 /?2 意义)