• SpringMVC的数据响应


    SpringMVC的数据相应方式

    页面跳转

    • 直接返回字符串
    • 通过ModelAndView对象返回

    回写数据

    • 直接返回字符串
    • 返回对象或集合

    页面跳转

    直接返回字符串

    直接返回字符串方式:此种方式会将返回的字符串与视图解析器的前后缀拼接后跳转。

    返回ModelAndView对象

        @RequestMapping("/quick")
        public String save(){
            System.out.println("Controller save running ...");
            return "success";
        }
    
        @RequestMapping("/quick2")
        public ModelAndView save2(){
    //        model:模型,封装数据
    //        view:视图,展示数据
            ModelAndView modelAndView = new ModelAndView();
    //        设置模型数据
            modelAndView.addObject("username","itcast");
    //        设置视图名称
            modelAndView.setViewName("success");
            return modelAndView;
        }
    
        @RequestMapping("/quick3")
        public ModelAndView save3(ModelAndView modelAndView){
    //        设置模型数据
            modelAndView.addObject("username","itcast");
    //        设置视图名称
            modelAndView.setViewName("success");
            return modelAndView;
        }
    
        @RequestMapping("/quick4")
        public String save4(Model model){
            model.addAttribute("suername","博学谷");
            return "success";
        }
    
        @RequestMapping("/quick5")
        public String save5(HttpServletRequest request){
            request.setAttribute("username","库定义");
            return "success";
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38

    回写数据

    直接返回字符串

    • 将需要回写的字符串直接返回,此时需要通过@ResponseBody注解告知SpringMVC框架,方法返回的字符串不是直接跳转是直接在HTTP响应体中返回
        @RequestMapping("/quick6")
        public void save6(HttpServletResponse response) throws IOException {
            response.getWriter().println("hello speingMVC");
        }
    
        @RequestMapping("/quick7")
        @ResponseBody//告知springMVC不是视图跳转,直接进行数据相应
        public String save7() throws IOException {
            return  "hello speingMVC";
        }
    
        @RequestMapping("/quick8")
        @ResponseBody//告知springMVC不是视图跳转,直接进行数据相应
        public String save8() throws IOException {
            return  "{usernmae:\"zhanghan\"}";
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    返回对象集合

    maven引入坐标

        
          com.fasterxml.jackson.core
          jackson-core
          2.11.0
        
        
          com.fasterxml.jackson.core
          jackson-databind
          2.11.0
        
        
          com.fasterxml.jackson.core
          jackson-annotations
          2.11.0
        
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    xml配置文件

    
    
    
        
    
    
        
            
            
        
    
        
            
                
                    
    
                    
                
            
        
    
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    代码

        @RequestMapping("/quick9")
        @ResponseBody//告知springMVC不是视图跳转,直接进行数据相应
        public String save9() throws IOException {
            User user = new User();
            user.setUsername("liliang");
            user.setAge(20);
    //        使用json转化工具转化成为json格式字符串
            ObjectMapper objectMapper = new ObjectMapper();
            String json = objectMapper.writeValueAsString(user);
            return  json;
        }
        @RequestMapping("/quick10")
        @ResponseBody//告知springMVC不是视图跳转,直接进行数据相应
    //    期望SpringMVC自动将User转化为json格式
        public User save10() throws IOException {
            User user = new User();
            user.setUsername("liliang");
            user.setAge(20);
            return  user;
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    
    
    
    • 1
    • 2
  • 相关阅读:
    Linux CookBook
    Windows【工具 04】WinSW官网使用说明及实例分享(将exe和jar注册成服务)实现服务器重启后的服务自动重启
    Android学习笔记 1. TextView
    ​iOS安全加固方法及实现
    Linux操作系统之基础IO
    使用HBuilderX将H5网页打包成APP
    【学习Docker(三)】Docker Mysql8.0.26的安装与卸载
    张宇30讲学习笔记
    LVS负载均衡集群
    mybatis-plus通用业务分页查询封装
  • 原文地址:https://blog.csdn.net/ChenfengZhang/article/details/126816967