У меня есть класс Entity с именем Role.java
и таблица Role_tbl
в базе данных. В моем коде у меня есть ArrayList
о Role
- roleList
. Я просто хочу проверить, существует ли всякая роль из roleList
в Role_tbl
.
Поэтому в первую очередь я должен извлечь все данные из Role_tbl
поместить их в новый ArrayList
из Role
- roleListfromDB
. После этого, используя для каждого цикла, я сделал проверку -
for(Role each : roleList){
if(!roleListFromDB.contains(each)){
flag = false;
break;
}
}
Но я думаю, что это недостаточно эффективно. Я знаю, что exist
условие exist
в hql. Я могу использовать его для проверки одного объекта. Но могу ли я использовать его, чтобы проверить, существует ли весь roleList
в БД?
Заранее спасибо.
Поэтому, прежде всего, я получаю все данные из Role_tbl
Нет, нет. Просто запросите таблицу для сопоставления сущностей, и если возвращаемый список имеет одинаковый размер, все они есть.
Если вам не нужно знать, какие объекты отсутствуют/присутствуют... вы можете просто сделать счет (@JBNizet)