DAO, вероятно, выполняет запрос как
select u from User u where ...
Измените запрос на
select u.name from User u where ...
Конечно, вместо List<User>
в результате вы получитеa List<String>
.
Это базовый материал, описанный в справочной документации Hibernate .Вы читали это?
Кроме того, получение сеанса из DAO и закрытие его вручную, как показано, показывает проблему проектирования.Это должно быть инкапсулировано сервисным уровнем или, что еще лучше, декларативной обработкой транзакций.