AJAX Example

Для задания интернет-магазина требуется реализовать пример с AJAX с использованием XMLHttpRequest.

Для работы с AJAX можно написать используя простые jsp-страницы, а можно с помощью Spring и вот еще пример для Spring.

Мы не будем усложнять задачу, и просто сделаем страницу, на которой по нажатию кнопки будем выводить некий текст, загруженный с помощью jQuery.

Проект, как обычно, сделаем на Spring MVC.

Добавим контроллер в котом, если в запросе есть параметры bookid, в ответ добавим параметр book в виде простой строчки и отправим все это в модель bookview.

package jperm;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller;

/** * * @author ars */ public class BookViewController implements Controller {

@Override public ModelAndView handleRequest(HttpServletRequest hsr, HttpServletResponse hsr1) throws Exception { String book = ""; String id = hsr.getParameter("bookid"); if (id != null) { book += "Спасибо за поиск книги "+id+". Мы запросим данные по ней у другой библиотеки."; }       ModelAndView mav = new ModelAndView("bookview"); mav.addObject("book",book); return mav; }   }

В модели bookview сделаем кнопку, по которой уходит AJAX-запрос на эту же страницу с параметром bookid, вводимым в текстовое поле ввода.

<%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html>  JSP Page  function loadBook { var bookid = document.getElementById("bookid").value; jQuery("#book-container").load("bookview.htm?bookid=" + bookid + " #book"); }       Hello World! ${book} получить информацию по книге 

В dispatcher-servlet.xml, опишем наш контроллер и отображение:

 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd      http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">



 indexController bookviewController



 

Осталось запустить пример и перейти на страницу bookview.htm