是否有任何方法可以一次设置具有Array作为实例变量的DTO对象?
这是DTO

public class AbcDTO {

String label;
Float[] time;
String[] startTime;
//getters and setters
 }

这是我试图设置此DTO的bean类
q = em.createNamedQuery("namedQuery");
        q.setParameter(1, anaId);
        List<Object> objects = new ArrayList();
        objects = q.getResultList();

现在对象列表,对象将包含一个列表,其中列表中的每个元素都有来自数据库的两个字段time和startTime。如何设置具有给定列表的DTO对象。

最佳答案

使用当前的DTO,您将必须遍历结果列表,收集timestartTime值,并将它们分配给您的DTO。 JPA没有为此提供直接方法。

您可以做的就是将DTO更改为具有一个time和一个startTime字段。然后,您可以将结果列表映射到具有构造函数表达式的DTO列表:

List<AbcDTO2> dtos = em.createQuery("SELECT new com.example.AbcDTO2( o.time, o.startTime) FROM Entity o").getResultList();

10-07 13:52