Я создаю проект с помощью Spring + Hibernate, и у меня есть небольшая проблема:
У меня есть сущность Hop
и сущность Country
. Когда я добавляю новую форму перехода - есть form:select
- выбор для этого списка из БД - это форма:
<tr>
<td><label>Origin:</label></td>
<td>
<form:select path="hopOrigin">
<form:option value="" label="...." />
<form:options items="${countryList}"/>
</form:select>
</td>
</tr>
Чтобы заполнить этот список, у меня есть этот класс в HopController
:
@ModelAttribute("countryList")
public List<Country> getCountry() {
List<Country> countriesNames = countryService.getCoutriesNames();
return countriesNames;
}
В конце концов, сервис страны - @Autowired
до CountryDaoImpl
, и есть метод:
@Override
public List<Country> getCoutriesNames() {
Session currentSession = sessionFactory.getCurrentSession();
Query<Country> theQuery = currentSession.createQuery("SELECT countryName FROM Country");
List<Country> countriesNames = theQuery.getResultList();
return countriesNames;
}
Таким образом, в и в этом выпадающем списке я получаю только countryName
, а не весь Country
объект. Этот подход требует создания методов в HopControler
, CountryService
, CountryServiceImp
, CountryDao
и CountryDaoImp
- только для получения одного поля.
Мой вопрос: есть ли какой-нибудь более простой способ (возможно, на странице JSP), чтобы получить только countryName
для этого выпадающего списка?