Spring MVC中ajax的处理

1 .使用HttpServletResponse来处理——不需要配置解析器

@RequestMapping("/ajax")
    public  void ajax(String name,HttpServletResponse  resp) throws IOException{
        if("siggy".equals(name)){
            resp.getWriter().print("true");
        }
        else{
            resp.getWriter().print("false");
        }
    }
//头文件省略
<script type="text/javascript"  src="js/jquery-1.3.2.min.js"></script>
  </head>
  <script type="text/javascript">
  /* $(document).ready(function() 类似*/
  $(function(){
     /* blur意思就是不聚焦的时候触发,val()返回textName的内容,如果val()有参数就是给textName赋值,
     val() 方法返回或设置被选元素的值 */
      $("#textName").blur(function(){
        $.post("ajax.do",{'name':$("#textName").val()},function(data){
            alert(data);
        })  
      }
    )
  });
  </script>
  <body>
  用户名  <input type="text"  id="textName"><br>
  </body>
</html>

2 . Spring MVC处理json数据

(1) 导入相关jar包(下载jackson jar包)
(2) 配置json转换器,不用记,用的时候拷贝,暂时没在文档内找到

<!--用于将对象转化为json  -->
    <!-- @ResponseBody之后返回字符串中中文可能会出现乱码,
        因为sping mvc默认是text/plain;charset=ISO-8859-1,所以要在mvc.xml配置charset -->
    <bean id="stringConverter"
    class="org.springframework.http.converter.StringHttpMessageConverter">
    <property  name="supportedMediaTypes">
        <list>
            <value>text/plain;charset=UTF-8</value>
        </list>
    </property>
    </bean>
    <bean id="jsonConverter"
    class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
    </bean>
    <bean  class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
        <property name="messageConverters">
            <list>
                <ref bean="stringConverter"/>
                <ref bean="jsonConverter"></ref>
            </list>
        </property>
    </bean>

(3) Controller类

    @RequestMapping("/json")
    @ResponseBody
//  @ResponseBody 将内容或对象作为 HTTP 响应正文返回,使用@ResponseBody将会跳过视图处理部分,
//  而是调用合适HttpMessageConverter,将返回值写入输出流。
//  @ResponseBody之后返回字符串中中文可能会出现乱码,
//  因为sping mvc默认是text/plain;charset=ISO-8859-1,所以要在mvc.xml配置charset
    public  List<User> json(){
        List<User>  list=new ArrayList<User>();
        list.add(new User(1,"张三","男"));
        list.add(new User(2,"李四","男"));
        list.add(new User(3,"王五","女"));
        return list;
    }
public class User {
    private int id;
    private String name;
    private String sex;
    public User() {
        super();
    }
    public User(int id, String name, String sex) {
        super();
        this.id = id;
        this.name = name;
        this.sex = sex;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
}

(4)页面

<script type="text/javascript"  src="js/jquery-1.3.2.min.js"></script>
  </head>
  <script type="text/javascript">
  /* $(document).ready(function() 类似*/
  $(function(){
     /* blur意思就是不聚焦的时候触发,val()返回textName的内容,如果val()有参数就是给textName赋值,
     val() 方法返回或设置被选元素的值 */
      $("#btn").click(function(){
        $.post("json.do",function(data){
            var html="";
            for(var i=0;i<data.length;i++){
                html+="<tr><td>"+data[i].id+"</td><td>"+data[i].name+"</td><td>"+data[i].sex+"</td><tr>";
            }
            $("#context").html(html); 
        })
      }
    )
  });
  </script>
  <body>
    <input type="button"  id="btn" value="获取数据"><br>
    <table width="80%"  align="center">
        <tr>
            <td>编码</td>
            <td>姓名</td>
            <td>性别</td>
        </tr>       
    <tbody id="context"></tbody>
    </table>
  </body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值