日期:2014-05-16  浏览次数:20327 次

spring mvc + jquery + json + ajax的实现
Its always been fun for me to work with Ajax! Is not it ? I will make it easy for you  to use Ajax with Spring MVC 3 and JQuery. This post will illustrate you how to use Ajax in real life practices of industrial coding. As usual, we will take an practical example of Ajax in Spring MVC 3 framework and will implement it and I will make the implementation easy by make you understand the topic.


Let us see what is our example’s requirement and how Spring MVC 3 Ajax facility will fulfill it :

In our example, we will make a list of students with name and highest education level, to send the list to the placement office so that the students can get chance. We will make the “Add Student Form” available to the student online so that they can submit their name online and get registered. As a lot of students will use the system, so the performance of the system may very much low. To increase to performance of the web application we will use Ajax with Spring MVC 3 Framework and JQuery.



Following steps we have to go through to implement our example :

    First of all, we will create a domain class (User.java) that will hold the value of student information.
    After that we will create our controller class (UserListController.java) to handle HTTP request. Our controller will handle three types of requests. First, to show the “Add Student Form”, second to handle Ajax request came from “Add Student Form” and add the students to a list, third to show the student information as a list.
    Then, we will create jsp page  (AddUser.jsp) to show “Add Student Form” that will use JQuery to send Ajax request to the Spring MVC Controller. The jsp will also confirm to the user that Student has been added to the list.
    Then, we will create a jsp (ShowUsers.jsp) that will list all users in the list.




User.java

User.java has two properties name and education to store the student information. Following is the code of User.java :




package com.raistudies.domain;


public class User {


    private String name = null;

    private String education = null;

    // Getter and Setter are omitted for making the code short

}







Controllers has three method to handle three request urls. “showForm” method handle the request for showing the form to the user. Bellow code shows the UserListController.java :


package com.raistudies.controllers;


import java.util.ArrayList;

import java.util.List;


import org.springframework.stereotype.Controller;

import org.springframework.ui.ModelMap;

import org.springframework.validation.BindingResult;

import org.springframework.web.bind.annotation.ModelAttribute;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.ResponseBody;


import com.raistudies.domain.User;


@Controller

public class UserListController {

    private List<User> userList = new ArrayList<User>();


    @RequestMapping(value="/AddUser.htm",method=RequestMethod.GET)

    public String showForm(){

        return "AddUser";

    }


    @RequestMapping(value="/AddUser.htm",method=RequestMethod.POST)

    public @ResponseBody String addUser(@ModelAttribute(value