Использование именованного запроса в методе сущностей в Hibernate - PullRequest
0 голосов
/ 16 октября 2018

У меня есть объект, у которого коллекция @ManyToMany помечена как ленивая.Когда я перечисляю эти сущности в JSP, я вызываю метод в каждой сущности, чтобы решить, следует ли мне показывать кнопку или нет, этот метод был разработан для подсчета количества элементов в этой коллекции, поэтому, если число элементов слишком велико,требуется JSP навсегда, потому что Hibernate загружает всю коллекцию со всеми их данными.

Мне было интересно, есть ли способ вызвать NamedQuery из этого метода в сущности, например:

@NamedNativeQuery(
    name="showButton",
    query="SELECT count(distinct(id)) FROM USER where GROUP_ID = :groupId")
@Entity 
class Group {
    ...

    @ManyToMany(mappedBy = "groups", cascade = { CascadeType.PERSIST, CascadeType.MERGE })
        private Set<User> users = new HashSet<User>();
    }

    ...
    public boolean showButton() {
        // Can I call the named query here??
    }
}

1 Ответ

0 голосов
/ 22 октября 2018

@ NamedQuery невозможен, но @Formula может использоваться для вычисления свойства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...