Соедините две таблицы в Hibernate с помощью Criteria API и Annotation - PullRequest
0 голосов
/ 21 мая 2011

Я хочу объединить 2 таблицы в MySQL с аннотациями и критериями Hibernate Как например:

У меня есть 2 таблицы, кандидаты и вакансии, по 2 колонки в каждой:

  • Кандидаты: CandID и CandName
  • рабочих мест: jobID и jobName

                            candidates                     jobs       
                  candID    candName          jobID          jobName
                      1          abc                       1               job1
                      2          xyz                       2               job2
    

Мне нужно создать запрос в Критерии в спящем режиме как:

 select candName  ,jobName    from candidates as c ,jobs as j  
 where c.candID = j.jobID where candName = abc and jobName=job1

каков будет критерий запроса для этого и, самое главное, что я напишу в своем классе аннотаций (так как я использую весенние аннотации) и нужно ли мне что-нибудь написать в моем applicationantioncontext.xml ...

Спасибо

Я буду очень признателен, если вы поможете мне с этим, так как я борюсь за последние 3 дня безуспешно

спасибо

1 Ответ

0 голосов
/ 21 мая 2011

Предполагается, что таблица для класса Hierarchy, где кандидаты и вакансии соответствуют их объектам базы данных

public class Candidates{
//define Generative stretegy if this is primary key, and other JPA annotations, with cascade
  private Long CandId;
//getters and setters
//define other properties here

}
/*Like wise for Jobs class */

Я не проверяю в IDE / компиляторе, но она должна быть примерно такой же, как

Criteria c1 = session.createCriteria(Candidates.class,candidate);
Criteria j1 = session.createCriteria(Jobs.class,jobs);
c1.setProjection(Property.forName(candName));
j1.setProjection(Property.forName(jobName));
c1.add(Restrictions.and(Property.eqName(candidate.candId,jobs.jobId)));
j1.add(Restrictions.and(jobs.jobName,"job1"));
c1.addCriterion(j1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...