SSM-SpringMVC-20:SpringMVC中处理器方法之返回值void篇

简介:   ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥-------------     处理器的方法我们之前做过,返回值为String的,返回值为ModelAndView的,我们这个讲的这个返回值void的做什么的? 答:最主要的是ajax的时候用的     案例如...

 


  ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥-------------

 

 

处理器的方法我们之前做过,返回值为String的,返回值为ModelAndView的,我们这个讲的这个返回值void的做什么的?

答:最主要的是ajax的时候用的

 

 

案例如下:

  俩个类:实体类UserInfo和处理器类:

    UserInfo类:

package cn.dawn.day12return;

/**
 * Created by Dawn on 2018/3/26.
 */
public class UserInfo {
    private String username;
    private String password;

    public UserInfo() {
    }

    public UserInfo(String username, String password) {
        this.username = username;
        this.password = password;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

    自定义的处理器类:

package cn.dawn.day12return;

import com.alibaba.fastjson.JSON;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

/**
 * Created by Dawn on 2018/3/26.
 */
@Controller
public class MyReturnDemoController {
    @RequestMapping("/doreturnVoidAjax")
    public void doreturnVoidAjax(HttpServletResponse response) throws IOException {
        List<UserInfo> lists=new ArrayList<UserInfo>();
        UserInfo u1=new UserInfo("M","123");
        UserInfo u2=new UserInfo("6","123");

        lists.add(u1);
        lists.add(u2);

        String json = JSON.toJSONString(lists);
        response.getWriter().write(json);
    }
}

    此处用到了阿里的fastjson的jar包,自已引一个即可,不说这个jar了

 

  自己的xml配置文件:

package cn.dawn.day12return;

import com.alibaba.fastjson.JSON;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

/**
 * Created by Dawn on 2018/3/26.
 */
@Controller
public class MyReturnDemoController {
    @RequestMapping("/doreturnVoidAjax")
    public void doreturnVoidAjax(HttpServletResponse response) throws IOException {
        List<UserInfo> lists=new ArrayList<UserInfo>();
        UserInfo u1=new UserInfo("M","123");
        UserInfo u2=new UserInfo("6","123");

        lists.add(u1);
        lists.add(u2);

        String json = JSON.toJSONString(lists);
        response.getWriter().write(json);
    }
}

 

  在web.xml中把中央调度器调度到自己当前写的这个xml配置文件,再解决乱码,再解决静态资源js不能引用的问题

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>

  <!--过滤器处理乱码-->
  <filter>
    <filter-name>CharacterEncoding</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <!--请求-->
    <init-param>
      <param-name>encoding</param-name>
      <param-value>utf-8</param-value>
    </init-param>
    <!--响应-->
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>

  <filter-mapping>
    <filter-name>CharacterEncoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>





  <!--中央调度器-->
  <servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:ApplicationContext-day12return.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>


  <!--第一种方式--><!--解决静态资源不能引用-->
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.js</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.css</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.jpg</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.png</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.gif</url-pattern>
  </servlet-mapping>

</web-app>

 

  jsp页面

<%@ page language="java" pageEncoding="utf-8" isELIgnored="false" %>
<html>
<head>
    <title>Ajax</title>
    <script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-1.8.3.min.js"></script>
    <script type="text/javascript">

        $(function () {

           $("input").on("click",function () {
             $.ajax({
                   url:"${pageContext.request.contextPath}/doreturnVoidAjax",
                   type:"POST",
                   data:{},
                   success:function (data) { //data:String json串   data:Object json对象

                       //用户名
                       $.each(eval("("+data+")"),function (i,dom) {
                           alert(dom.username);
                       });
                   }
               });
           });
        });

    </script>
</head>

<body>
<%--<img src="image/1.jpg">--%>
<input type="button" value="想发送Ajax?,点我不要赔的喔!!!呵呵哒~~~~~~"/>
</body>
</html>

 

 

案例完毕

目录
相关文章
|
11月前
|
JSON 前端开发 Java
Spring MVC入门必读:注解、参数传递、返回值和页面跳转(下)
Spring MVC入门必读:注解、参数传递、返回值和页面跳转(下)
100 0
|
Java
【SpringMVC】注解、参数传递、返回值和页面跳转的关键步骤(三)
【SpringMVC】注解、参数传递、返回值和页面跳转的关键步骤(三)
63 0
|
2月前
|
前端开发 Java Spring
SpringMVC种通过追踪源码查看是哪种类型的视图渲染器(一般流程方法)
这篇文章通过示例代码展示了如何在Spring MVC中编写和注册拦截器,以及如何在拦截器的不同阶段添加业务逻辑。
SpringMVC种通过追踪源码查看是哪种类型的视图渲染器(一般流程方法)
|
3月前
|
开发者 索引
SpringMVC原理(2)-目标方法是怎么被找到的
目标方法(Handler)是如何被找到的 涉及组件:HandlerMapping、MappingRegistry、HandlerExecutionChain
序-Servlet和SpringMVC的联系和区别-配置路径先想好使用的使用的方法,然后匹配的需要的技术
序-Servlet和SpringMVC的联系和区别-配置路径先想好使用的使用的方法,然后匹配的需要的技术
|
5月前
|
Java 数据库连接 应用服务中间件
SpringMVC关于SSM的整合配置步骤
SpringMVC关于SSM的整合配置步骤
39 1
|
5月前
|
设计模式 前端开发 Java
[Spring ~源码] Spring的run方法以及SpringMVC执行流程
[Spring ~源码] Spring的run方法以及SpringMVC执行流程
|
11月前
|
XML JSON 前端开发
SpringMVC入门的注解、参数传递、返回值和页面跳转---超详细教学
SpringMVC入门的注解、参数传递、返回值和页面跳转---超详细教学
232 1
|
5月前
|
运维 网络架构 索引
SSM整合-异常处理器及项目异常处理方案
SSM整合-异常处理器及项目异常处理方案
82 0
|
5月前
|
Java Spring
SpringMVC控制层private方法中出现注入的service对象空指针异常
一、现象 SpringMVC中controller里的private接口中注入的service层的bean为null,而同一个controller中访问修饰符为public和protected的方法不会出现这样的问题。 controller中的方法被AOP进行了代理,普通Controller如果没有AOP,private方法中bean也是正常的。