我有一个 Open JPA 实体,它成功地连接了多对多关系。现在我成功地得到了整个表,但我真的只想要那些表中的 ID。我计划稍后调用数据库来重建我需要的实体(根据我的程序流程)。我只需要 ID(或该表中的一列)。
1) 我是否应该尝试在我的实体 bean 或我将用来调用实体 bean 的无状态会话 bean 中限制它 2) 如果我尝试使用 JPA 执行此操作,我如何指定我只取回ID 来自表,而不是整个表?到目前为止在网上看,我看不到你可以做到这一点的方法。所以我猜没有办法做到这一点。3)如果我只是简单地操作返回值,我是否应该创建一个单独的类,我将返回给用户,只返回所需的 id 列表给用户?
我在这里可能完全错了,但从外观上看,我认为没有一种简单的方法可以使用 JPA 来做到这一点,我将不得不向用户返回一个自定义对象而不是实体 bean(这个自定义对象只会保存 id,而不是像现在这样保存整个表)
任何想法......我认为这并不重要,但人们总是要求代码,所以你去......
@ManyToMany(fetch=FetchType.EAGER)
@JoinTable(name="QUICK_LAUNCH_DISTLIST",
joinColumns=@JoinColumn(name="QUICK_LAUNCH_ID"),
inverseJoinColumns=@JoinColumn(name="LIST_ID"))
private List<DistributionList> distributionlistList;
目前我如何获得整个记录集合。记住我只想要身份证...
try
{
//int daSize = 0;
//System.out.println("Testing 1.2..3...! ");
qlList = emf.createNamedQuery("getQuickLaunch").getResultList();
}
这就是我调用实体 bean 的方式。我在想这是我必须以编程方式创建一个类似于实体 bean 的自定义对象的地方(但它只有 ID 而不是整个表,并尝试将 id 放在某个地方。
你怎么认为?
谢谢