0

私は次のスキーマを持っています:

TABLE EMPLOYEE           TABLE COUNTRY
---------------         ---------------
id                 |------> id
name               |        country_name
country_id   ------|        country_code

ある国に属するすべての従業員を取得する場合は、次のような基準を使用します。

Criteria crit =  getSession().createCriteria(Employee.class);
crit.add(Restrictions.eq("country.id", countryId));
List<Employee> employees = crit.list();

私の従業員エンティティは、次のように国を参照します。

@Entity
public class Employee {
    private static final long serialVersionUID = 1L;

    @Id
    private Integer id;

    @ManyToOne
    @JoinColumn(name="country_id")
    private Country country;

    // Other stuff here 
}

ここですべてがうまくいきます!

問題は、countryId がわからず、代わりに country_code (ig "UK") を持っている場合です。表を結合して国コードに制限を追加するには、上記の基準をどのように変更すればよいですか?

4

2 に答える 2