当前位置: 首页>编程语言>正文

java 三表关联建表 java实现两张表关联

我正在使用Hibernate 4.3.6

我有一个名为StudyCase的实体,该实体与数据库中称为StudyCase的表映射

,我还得到了另一个实体名称Measurement,并映射到数据库中名为Measurement的表中。每个StudyCase对象都可以与许多Measurement对象相关联,问题是这样的。

我想将两个表映射到一个称为mergedEntity的新实体中,并使用来自两个表的集查询它,结果将是具有相同约束的Measurement对象具有一对一关系的对象列表,但也会分配它们所属的StudyCase对象的信息。

我在jpa春季做了一些类似的工作:

public List searchMeasurement(String actualConditions)
{
jdbcTemplate = new JdbcTemplate(dataSource);
String sql = "select * from Measurement INNER JOIN StudyCase ON Measurement.study_case_number=StudyCase.study_case_number where "+actualConditions ;
List result = this.jdbcTemplate.query(sql, new BeanPropertyRowMapper(MergeObject.class)) ;
return result ;
}

有什么办法可以使我使用休眠模式实现相同的目的。

谢谢 !

参考方案

使用Hibernate Documentation所说的,您必须做

@Entity
public class Troop {
@OneToMany(mappedBy="troop")
public Set getSoldiers() {
...
}
@Entity
public class Soldier {
@ManyToOne
@JoinColumn(name="troop_fk")
public Troop getTroop() {
...
}

这形成了双向关系


https://www.xamrdz.com/lan/5kb1962736.html

相关文章: