Tag: join

谁和什么时候调用thread.join()时通知thread.wait()?

thread.join()将调用thread.wait() ,但是谁和何时通知(使用thread.notify()或notifyAll() ) thread.wait() ? 我们知道,线程连接将等待线程完成,但是谁调用了通知呢?

使用Hibernate在不同数据库中的2个表上进行连接

我需要在Hibernate中加入两个独立的Oracle数据库 (不是模式)中的两个表。 目前,我有两个Hibernate会话进入单独的数据库。 在任何人看到Hibernate Shards之前 ,我花了一天时间看着那个子项目并且发现:它是针对水平分区数据(所有表必须在所有数据库AFAIK中),有没有办法告诉Shards只能在一个数据库中查看( Hibernate Shards Docs ),而且不再使用它。 我曾想过试图解决这个问题的事情: 在两个表上执行findAll()或某些受限制的变体,并使用一些循环手动执行连接。 (适用于非常小的桌子 – 禁止从小桌子上来) 让会话进行某种交互(我不知道这是否可行 – 将不得不查看Hibernate Session API) 从不同hibernate-xxxx.cfg.xml的URL字符串中删除数据库名称,并将它们插入到单独的hbm.xml文件中,如下所示: (似乎没有从我最初的测试工作,这看起来像卡车大小的安全漏洞) 使用存储库模式(如果我的Java-Fu足够强大,则不确定) 在上面的一个案例中是否有一些我忽略的东西,或者它是否是我未在上面列出的另一种方式?

如何使用JPA和Hibernate加入两个不相关的实体

我有两个表 – 一个包含地址,另一个包含照片。 它们之间唯一的共同点是PersonID。 这些映射到两个POJO类地址和照片。 我可以通过创建条件并在字段上添加限制来获取这些表中的详细信息。 我们应该如何在两个表上编写连接。 是否可以将结果作为两个对象-Address和Photo。 我想做一个左连接,这样我就可以获得没有照片的人的记录。 我已经读过这可能只使用hql但是这可以使用标准来完成吗?

JPA Criteria API – 如何添加JOIN子句(作为一般句子)

我试图动态构造查询,我的下一个目标是添加JOIN子句(我不知道如何使用API​​)。 例如,到目前为止,这段代码对我有用: … Class baseClass; … CriteriaBuilder cb = JpaHandle.get().getCriteriaBuilder(); CriteriaQuery cq = cb.createQuery(this.baseClass); Root entity_ = cq.from(this.baseClass); Predicate restrictions = null; … restrictions = cb.conjunction(); restrictions = cb.and(restrictions, entity_.get(“id”).in(this.listId)); … cq.where(restrictions); … Query qry = JpaHandle.get().createQuery(cq); (注意:JpaHandle来自wicket-JPA实现) 我的愿望是添加JOIN子句(尽可能通用)! 我在类中有特定的注释(this.baseClass) 例如 : @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = “assay_id”, nullable = false) 那么,在标准JPA中有没有这样的方法呢? (注意:这不编译) 这是一个实际的失败方法: … […]

只是获取id列值而不是在hibernate对象中使用join一对多关系

我正在使用hibernate 4+。 我有两个样本表。 表A. public class A { @Id private int id; @OneToMany(fetch=LAZY) private List list; // skip getter&setter } 表B. public class B { @Id private int id; @ManyToOne(fetch=LAZY) @JoinColumn(name=”b_id”) private A a; // skip getter&setter } 表A(1) – (n)表B关系 我可以在对象B中获取A的id而不使用join吗? 比如int aid = b.getA()。getId(); // b是B的实例; 虽然我在声明类B时可以使用int值而不是A.但是另一个服务层使用A和join。 我可以获得id(fk)值吗? 请帮忙。

Hibernate Criteria和多个join

有可能用Hibernate标准吗? select A.something, B.something, C.something, D.something from A JOIN B on A.id = B.id_fk JOIN C ON B.id = C.id_fk JOIN D ON C.id = D.id_fk;