小编Sad*_*ath的帖子

如何使用弹簧数据jpa的投影和规格?

我无法一起使用Spring Data JPA投影和规范.我有以下设置:

实体:

@Entity
public class Country {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;

    @Column(name = "NAME", nullable = false)
    private String name;

    @Column(name = "CODE", nullable = false)
    private String code;

    ---getters & setters---

}
Run Code Online (Sandbox Code Playgroud)

投影界面:

public interface CountryProjection {
    String getName();
}
Run Code Online (Sandbox Code Playgroud)

国家规格:

public class CountrySpecification {
    public static Specification<Country> predicateName(final String name) {
        return new Specification<Country>() {
            @Override
            public Predicate toPredicate(Root<Country> eventRoot, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
                return criteriaBuilder.equal(eventRoot.get(Country_.name), name);
            }
        };
    }
}
Run Code Online (Sandbox Code Playgroud)

库: …

hibernate jpql spring-data-jpa spring-boot

11
推荐指数
4
解决办法
1万
查看次数

标签 统计

hibernate ×1

jpql ×1

spring-boot ×1

spring-data-jpa ×1