2015-01-10 4 views
0

Я загружаю страницу jsp и в контроллер добавляю атрибут List как модель. то список отображается на странице jsp следующим образом.Применить изменения базы данных для просмотра jsp

<c:forEach var="pattern" items="${patterns}"> 
       <li class="list-group-item liitem"><strong>${pattern.id}:</strong> 
        <span class="pull-right">${pattern.name}</span> 
       </li> 
</c:forEach> 

Вот контроллер, который я называю

@RequestMapping(method = RequestMethod.GET) 
public ModelAndView printWelcome(ModelMap model){ 
    ModelAndView mav = new ModelAndView("arcane") ; 
    List<Pattern> patternList=patternDao.patternList(); 
    mav.addObject("patterns", patternList); 
    return mav; 
} 

patternList Но получает изменилось время от времени, как это извлекается из базы данных. Как обновить эти изменения, не загружая всю страницу jsp. Все, что я хочу, - это как я могу обновить только один тег div, вызвав контроллер снова?

Я попытался использовать метод управления ajax для вызова, но как я могу применить новый список к представлению jsp с помощью ajax.

ответ

1

Используйте Ajax, и когда вы получите ответ, измените содержание.

Check this: http://jsfiddle.net/Lobmx96y/1/ 
1

Вы можете дать идентификатор для этого DIV и когда вы хотите, чтобы обновить список сделать Ajax вызова к контроллеру в ответ найти, что DIV, и заменить содержимое, если DIV на странице с одной в ответ (путем установки InnerHtml от дел)

Или

Вы можете создать страницу JSP, содержащий только список, (в цикле, тег)

создать новый метод контроллера

@RequestMapping(value = "justTheList" method = RequestMethod.GET) public ModelAndView printWelcome(ModelMap model){ ModelAndView mav = new ModelAndView("JSPPAGE_WITH_THE_LIST") ; List<Pattern> patternList=patternDao.patternList(); mav.addObject("patterns", patternList); return mav; }

установить InnerHtml или ответ;

Смежные вопросы