您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
在Spring Data JPA中使用Criteria API构建类型安全的查询,可以通过以下步骤:
创建一个接口继承自JpaRepository
,并传入实体类和主键类型作为泛型参数,例如:public interface UserRepository extends JpaRepository<User, Long> {}
。
在接口中定义一个方法,命名规则为findByXXX
,其中XXX
为实体类中的属性名称,然后使用CriteriaBuilder
构建查询条件。
public interface UserRepository extends JpaRepository<User, Long> {
List<User> findByFirstNameAndLastName(String firstName, String lastName);
}
CriteriaBuilder
构建查询条件,如下所示:@Repository
public class UserRepositoryImpl {
@PersistenceContext
private EntityManager entityManager;
public List<User> findByFirstNameAndLastName(String firstName, String lastName) {
CriteriaBuilder cb = entityManager.getCriteriaBuilder();
CriteriaQuery<User> query = cb.createQuery(User.class);
Root<User> root = query.from(User.class);
Predicate predicate = cb.and(
cb.equal(root.get("firstName"), firstName),
cb.equal(root.get("lastName"), lastName)
);
query.select(root).where(predicate);
TypedQuery<User> typedQuery = entityManager.createQuery(query);
return typedQuery.getResultList();
}
}
List<User> users = userRepository.findByFirstNameAndLastName("John", "Doe");
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。