栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringMVC的数据响应

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringMVC的数据响应

文章目录

文章目录
  • 文章目录
  • 一、数据响应方式
  • 二、页面跳转
    • 1.直接返回字符串
    • 2.通过ModelAndView对象返回
      • 1.方式一
      • 2.方式二
      • 3.方式三
      • 4.方式四(不常用)
  • 三、回写数据
    • 1.直接返回字符串
      • 1.方式一
      • 1.方式二
      • 1.方式三
      • 1.方式四
    • 2.返回对象和集合
      • 1. 配置处理器映射器
      • 2.注解
  • 四、详细代码
    • 1.pom.xml
    • 2.web.xml
    • 3.spring-mvc.xml
    • 4.success.jsp
    • 5.User
    • 6.UserController


一、数据响应方式

二、页面跳转 1.直接返回字符串


在SpringMVC快速入门已演示:快速入门案例

2.通过ModelAndView对象返回 1.方式一
 @RequestMapping(value = "/quick2")
    public ModelAndView save2(){
        ModelAndView modelAndView = new ModelAndView();
        //设置模型数据
        modelAndView.addObject("userName","小飞侠");
        //设置视图名称
        modelAndView.setViewName("success");
        return modelAndView;

    }

运行测试:

2.方式二
 @RequestMapping(value = "/quick3")
    public ModelAndView save3(ModelAndView modelAndView){
        //设置模型数据
        modelAndView.addObject("userName","小马哥");
        //设置视图名称
        modelAndView.setViewName("success");
        return modelAndView;

    }

运行测试:

3.方式三
@RequestMapping(value = "/quick4")
    public String save4(Model model){
        //设置模型数据
      model.addAttribute("userName","马奎斯");
        return "success";

    }

运行测试:

4.方式四(不常用)
 @RequestMapping(value = "/quick5")
    public String save5(HttpServletRequest hsr){
        //设置模型数据
       hsr.setAttribute("userName","罗西");
        return "success";

    }

运行测试:

三、回写数据 1.直接返回字符串 1.方式一

//回写数据
    @RequestMapping(value = "/quick6")
    public void save6(HttpServletResponse response) throws IOException {
       response.getWriter().write("Hello World!");

    }

运行测试:

1.方式二

 @RequestMapping(value = "/quick7")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public String save7() throws IOException {
        return "hello World!";

    }

运行测试:

1.方式三

先创建一个User实体类

 @RequestMapping(value = "/quick8")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public String save8() throws IOException {
        return "{"username":"jack","age":20}";

    }

运行测试:

1.方式四

先导入依赖:

 
      com.fasterxml.jackson.core
      jackson-core
      2.9.0
    
    
      com.fasterxml.jackson.core
      jackson-databind
      2.9.0
    
    
      com.fasterxml.jackson.core
      jackson-annotations
      2.9.0
    
  @RequestMapping(value = "/quick9")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public String save9() throws IOException {
        User u=new User();
        u.setUsername("tom");
        u.setAge(45);
        //使用json转换工具将对象转换为json格式字符串再返回
        ObjectMapper objectMapper = new ObjectMapper();
        String json = objectMapper.writeValueAsString(u);
        return json;
    }

运行测试:

2.返回对象和集合 1. 配置处理器映射器


    
        
            
                
            
        
    
  @RequestMapping(value = "/quick10")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public User save10() throws IOException {
        User u=new User();
        u.setUsername("world");
        u.setAge(18);

        return u;

    }

运行测试:

2.注解


mvc注解驱动:


    
四、详细代码 1.pom.xml



  4.0.0

  org.example
  SpringMVC-Demo1
  1.0-SNAPSHOT
  war

  
    
      org.springframework
      spring-context
      5.2.10.RELEASE
    
    
      org.springframework
      spring-web
      5.2.10.RELEASE
    
    
      org.springframework
      spring-webmvc
      5.2.10.RELEASE
    
    
      javax.servlet
      javax.servlet-api
      4.0.1
    
    
      javax.servlet.jsp
      javax.servlet.jsp-api
      2.3.3
    
    
      com.fasterxml.jackson.core
      jackson-core
      2.9.0
    
    
      com.fasterxml.jackson.core
      jackson-databind
      2.9.0
    
    
      com.fasterxml.jackson.core
      jackson-annotations
      2.9.0
    
  


2.web.xml



 
  Archetype Created Web Application
  
    DispatcherServlet
    org.springframework.web.servlet.DispatcherServlet
    
      contextConfigLocation
      classpath:spring-mvc.xml
    
    1
  
  
    DispatcherServlet
    /
  


3.spring-mvc.xml


    
    
    
    
        
        
    
  
    
   
    



4.success.jsp
<%--
  Created by IntelliJ IDEA.
  User: 86166
  Date: 2022/6/26
  Time: 9:42
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page isELIgnored="false" %>


    Title


Success.......${userName}

5.User
package com.study.domain;

public class User {
    private String username;
    private int age;

    public String getUsername() {
        return username;
    }

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

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "User{" +
                "username='" + username + ''' +
                ", age=" + age +
                '}';
    }
}

6.UserController
package com.study.controller;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.study.domain.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@Controller
@RequestMapping("/user")
public class UserController {

    @RequestMapping(value = "/quick10")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public User save10() throws IOException {
        User u=new User();
        u.setUsername("world");
        u.setAge(18);

        return u;

    }

    @RequestMapping(value = "/quick9")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public String save9() throws IOException {
        User u=new User();
        u.setUsername("tom");
        u.setAge(45);
        //使用json转换工具将对象转换为json格式字符串再返回
        ObjectMapper objectMapper = new ObjectMapper();
        String json = objectMapper.writeValueAsString(u);
        return json;
    }


    @RequestMapping(value = "/quick8")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public String save8() throws IOException {
        return "{"username":"jack","age":20}";

    }

    @RequestMapping(value = "/quick7")
    @ResponseBody  //告诉SpringMVC框架不进行视图跳转,直接进行数据响应
    public String save7() throws IOException {
        return "hello World!";

    }

   //回写数据
    @RequestMapping(value = "/quick6")
    public void save6(HttpServletResponse response) throws IOException {
       response.getWriter().write("Hello World!");

    }


    //不常用
    @RequestMapping(value = "/quick5")
    public String save5(HttpServletRequest hsr){
        //设置模型数据
       hsr.setAttribute("userName","罗西");
        return "success";

    }

    @RequestMapping(value = "/quick4")
    public String save4(Model model){
        //设置模型数据
      model.addAttribute("userName","马奎斯");
        return "success";

    }

    @RequestMapping(value = "/quick3")
    public ModelAndView save3(ModelAndView modelAndView){
        //设置模型数据
        modelAndView.addObject("userName","小马哥");
        //设置视图名称
        modelAndView.setViewName("success");
        return modelAndView;

    }

    @RequestMapping(value = "/quick2")
    public ModelAndView save2(){
        ModelAndView modelAndView = new ModelAndView();
        //设置模型数据
        modelAndView.addObject("userName","小飞侠");
        //设置视图名称
        modelAndView.setViewName("success");
        return modelAndView;

    }

    @RequestMapping(value = "/quick",method = RequestMethod.GET,params = {"userName"})
    public String save(){
        System.out.println("UserController....");
        
        
        return "success";
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/999503.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号