В моем контроллере поместите значение из базы данных MySQL
в ModelAndView object
Существует отдельная программа, которая обновляет таблицу, и MVC должна захватить это значение, чтобы не было форм для обновления этой таблицы.
Когда таблица обновляется, а когда я удаляю обновление в браузере, значения не будут обновляться на странице.
контроллер
@SuppressWarnings("unchecked")
@Secured({ "ROLE_USER", "ROLE_ADMIN" })
@RequestMapping(value = { "/", "/welcome" }, method = RequestMethod.GET)
public ModelAndView defaultPage(@ModelAttribute("user") User user) {
Collection<SimpleGrantedAuthority> authorities = (Collection<SimpleGrantedAuthority>) SecurityContextHolder
.getContext().getAuthentication().getAuthorities();
ModelAndView view = new ModelAndView("/hello");
// Redirects to admin page if user has admin role
if (authorities.toString().contains("ROLE_ADMIN")) {
return new ModelAndView("redirect:/admin");
}
/////
Authentication auth = SecurityContextHolder.getContext().getAuthentication();
String userName = auth.getName();
User userInfo = userDAO.getUserInfo(userName);
System.out.println("Here the thing " + userInfo.getLastname() + " " + userInfo.getUserDetails());
Details details = userDAO.getDetailsInfo(userInfo.getUserDetails().getLastname(),
userInfo.getUserDetails().getPostcode());
Plugs plugs = userDAO.getPlugInfo(details.getMacAddress());
String json = plugs.getJson();
JSONObject obj = new JSONObject(json); //this is the value that is not updating
String name = obj.getJSONObject("meta").getJSONObject("locate").getString("value");
System.out.println(name);
view.addObject("json", obj);
return view;
}
Я знаю, что это довольно оскорбительно, но я помещаю это значение в Javascript.
вот так:
<c:set var="json" value="${json}"/>
var __data__ = ${json};
Почему MVC не отображает правильное значение при обновлении базы данных?
Я хочу, чтобы он обновлялся при обновлении
EDIT: я отключил кеширование и очищенный кеш, все еще есть проблема. Любая помощь?