0

我有一个查询,我试图从表中获取数据。我有指向其他表的外键,我也希望该数据返回,除非我希望它在我将返回的实体的集合中......

try
    {
        System.out.println("testing 1..2..3");
        listQL = emf.createNamedQuery("getQuickLaunch").getResultList();
        System.out.println("What is the size of this list: number "+listQL.size());
        qLaunchArr = listQL.toArray(new QuickLaunch[listQL.size()]);            

    }

这适用于获取初始表,但其他集合似乎没有填充。至少在我拥有的测试视图窗口中......(我正在使用 WID)......

这是我的JPA...

@OneToMany(mappedBy="quickLaunchId", cascade=CascadeType.ALL)
private List<QuickLaunchPerm> quickLaunchPermCollection;

@OneToMany(mappedBy="quickLaunchId", cascade=CascadeType.ALL)//fetch=FetchType.EAGER)
private List<QuickLaunchProvider> quickLaunchProviderCollection;

@OneToMany(mappedBy="quickLaunchId")//, cascade=CascadeType.ALL)//fetch=FetchType.EAGER)
private List<QuickLaunchDistlist> quickLaunchDistlistCollection;

我需要一个命名查询来实际连接我正在调用的表吗???这就是我认为我需要的。

谢谢。

UDPATE:有问题的命名查询

@NamedQuery(name="getQuickLaunch", query = "SELECT q FROM QuickLaunch q")

那么我是否需要为我想要拉回的每个其他集合添加一个内部连接(或左连接)?

4

0 回答 0