如何返回一组持久化对象?

Bra*_*avo 2 java spring jpa entitymanager

我有一个类,其中包含通过实体管理器创建客户对象的方法。我想添加另一个方法,该方法将返回一组创建的对象;对于我的情况我该怎么做?例如,我有以下代码:

public class DefaultCoreRepository implements CoreRepository {

private EntityManager entityManager;

@PersistenceContext(unitName = "crm-db")
public void setEntityManager(EntityManager entityManager) {
    this.entityManager = entityManager;
}

private <T> T persist(T entity) {
    entityManager.persist(entity);
    return entity;
}

public void createCustomer(Customer customer) {
    persist(customer);
}

public Set<Customer> getCustomers() {
    //Code to be written here
}
Run Code Online (Sandbox Code Playgroud)

小智 5

从 JPA 2.2 开始,您还可以使用 Java 8 流 API:

entityManager.createQuery("SELECT customer FROM Customer customer", Customer.class)
            .getResultStream()
            .collect(Collectors.toSet());
Run Code Online (Sandbox Code Playgroud)