У меня есть проект Java 8. У меня есть класс сервера, содержащий:
Код: Выделить всё
Long id
string name
string ipAddress
String status
Это объект базы данных SQL. Я хочу запустить запрос CriteriaUpdate, который обновляет мою таблицу на основе результата метода. Если «id» 1 не может быть проверен, как изменить столбец «статус», не изменяя все остальные столбцы «id».
Код: Выделить всё
CriteriaBuilder cb = entityManager.getCriteriaBuilder();
CriteriaUpdate cu = cb.createCriteriaUpdate(ServersDao.class);
Root root = cu.from(ServersDao.class);
cu.set("status", "SERVER_UP");
cu.where(cb.equal(root.get("status", "SERVER_DOWN")));
У меня проблема в том, что все строки в столбце изменяются на SERVER_UP или SERVER_DOWN. Мне нужно, чтобы это основывалось на относительном поле «id», а не на всех других моих идентификаторах.
Подробнее здесь:
https://stackoverflow.com/questions/790 ... -if-a-meth