首页 > 解决方案 > 根据具有 @joinColumn 注释的列上的 where 条件在休眠中选择查询

问题描述

如何从休眠中的 Office 表中获取街道的值?

Hibernate 中的类:

@Entity
public class Office {
   @OneToOne(fetch = FetchType.LAZY)
   @JoinColumn(name = "addressId")
   private Address address;
     
   @Column
   private String name;
    
   public Address getAddress() {
       return address;
   }
   public void setAddress(Address address){
       this.address = address;
   }

   public String getName() {
       return name;
   }

   public void setName(String name){
       this.name = name;
   }
}
@Entity
public class Address {
   @Id
   private int houseNo;
    
   @Column
   private String street;
    
   public int getHouseNo() {
       return address;
   }

   public void setHouseNo(int hno){
       this.houseNo = hno;
   }

   public String getStreet() {
       return street;
   }

   public void setStreet(String street){
       this.street = street;
   }
}

桌子:

办公室:(addressId 类型为 Number)

地址标识 姓名 街道
2 吉姆 xyz

地址:

房屋编号 街道
2 xyz

我想做类似的事情SELECT street FROM office WHERE addressId = 2;

标签: javaoraclehibernate

解决方案


推荐阅读