2017-02-08 2 views
0

У меня есть одна таблица в базе данных, называемая Институтом, в которой хранятся связанные с институтом детали. Один столбец в этой таблице - Institute_type_id, который является FK таблицы Institute_type с PK Institute_type_id. В таблице instit_type содержится еще один столбец Institute_type_name.
В JSP есть одна страница, которая перечисляет институт на основе поиска. Также есть раздел «УСТАНОВИТЬ ВАШ ПОИСК», где пользователь может выбрать институт_имя и может сузить поиск.
Я реализовал с использованием Spring MVC и используемого атрибута модели для хранения пользовательских значений и поиска критериев поиска для запроса в базе данных.
Lets пример -
институт (таблица)
Id Название insitute_type место
101 High School 1 ABCОтображение таблицы гибернации

Institute_type (таблица)
ID Тип
1 Школа
2 Колледж

Модели
Институт.ява

@Column(name="INSTITUTE_TYPE") 
private Integer instituteType; 

//Code for other column and getter and setter 

Institute_type.java

@Column(name="ID") 
private Integer ID; 

@Column(name="TYPE") 
private String type; 

//code for setter and getter 

Примечание - отношение б/б Институт и Institute_type таблицы один ко многим. Один институт может иметь более одного типа института. пусть Институт «ABC» может быть школьным и +2 Школа (11-й и 12-й классы), оба или может быть только одним. В институте может быть школа +2 или комбинация + Школа и колледж. и т. д.
Требование. Когда пользователь выбирает институт, чтобы сузить поисковый запрос, необходимо использовать критерии для сужения поиска.
Проблема. Если я использую сопоставление один к одному, Hibernate использует левое внешнее соединение, поэтому те институты, которые совпадают с Institute_type, также находятся в списке поиска. Как реализовать решение проблемы в спящем режиме.

ответ

0

Я думаю, что отношение много для многих, если один институт может иметь несколько типов институтов. Я думаю, что тот же тип института может использоваться несколькими институтами. Кроме того, почему бы вам не отобразить институт Type в класс Institute_type? Если вы сопоставляете его с классом, вы можете использовать HQL/JPQL или API критериев для создания запросов с помощью объединений и фильтра. Каким образом вы получаете свои данные сейчас?