Хэндшейк, улучшенный граф, новые методы в репозитории в DB
This commit is contained in:
@@ -67,6 +67,36 @@ public abstract class Repository<T> {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Поиск сущности по значению одного поля с использованием оператора LIKE
|
||||
* @param fieldName поле
|
||||
* @param value значение
|
||||
* @return найденная сущность или null
|
||||
*/
|
||||
public T likeSearch(String fieldName, String value) {
|
||||
return executeInSession(session -> {
|
||||
String queryString = "FROM " + entityClass.getSimpleName() + " WHERE " + fieldName + " LIKE :value";
|
||||
return session.createQuery(queryString, entityClass)
|
||||
.setParameter("value", "%" + value + "%")
|
||||
.uniqueResult();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Поиск сущности по значению одного поля с использованием оператора LIKE
|
||||
* @param fieldName поле
|
||||
* @param value значение
|
||||
* @return найденная сущность или null
|
||||
*/
|
||||
public List<T> likeSearchAll(String fieldName, String value) {
|
||||
return executeInSession(session -> {
|
||||
String queryString = "FROM " + entityClass.getSimpleName() + " WHERE " + fieldName + " LIKE :value";
|
||||
return session.createQuery(queryString, entityClass)
|
||||
.setParameter("value", "%" + value + "%")
|
||||
.list();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Поиск сущности по набору полей
|
||||
* @param fields карта полей и их значений
|
||||
|
||||
Reference in New Issue
Block a user