当前位置: 首页 > news >正文

SpringMVC响应页面及不同类型的数据,

   

目录

响应页面

响应数据

文本数据

响应POJO对象 

​编辑

响应生命周期

视图解析器 


    控制器(Controller)处理完客户端请求后,生成的并返回给客户端的结果就是响应,响应的结果可以是静态页面,数据,HTML片段等。

响应页面

    在springmvc中,跳转页面非常简单,只需返回一个字符串即可。

    //响应页面,跳转页面
    @RequestMapping("/toJumpPage")
    public String toJumpPage(){
        System.out.println("跳转页面");
        return "page.jsp";
    }

打开浏览器输入:localhost:8080/toJumpPage,自动跳转到page.jsp。

响应数据

文本数据

    响应文本数据,需要加上@RequestBody注解

    //响应文本数据
    @RequestMapping("/toText")
    @ResponseBody
    public String toText(){
        System.out.println("返回纯文本数据");
        return "response text";
    }

响应POJO对象 

    响应POJO对象,只需要修改方法返回值为POJO,同时也要添加上@ResponseBody注解:

    @RequestMapping("/toJsonPOJO")
    @ResponseBody
    public User toJsonPOJO(){
        System.out.println("返回json对象数据");
        User user = new User();
        user.setName("springmvc");
        user.setAge(12);
        return user;
    }

    返回集合对象也是如此:

    @RequestMapping("/toJsonPOJOList")
    @ResponseBody
    public List<User> toJsonPOJOList(){
        System.out.println("返回json对象数据集合");
        User user = new User();
        user.setName("spring");
        user.setAge(126);
        User user1 = new User();
        user1.setName("mvcspring");
        user1.setAge(99);
        List<User> list = new ArrayList<>();
        list.add(user);
        list.add(user1);
        return list;
    }

响应生命周期

  1.  请求接收:DispatcherServlet接收HTTP请求
  2.  处理器映射:HandlerMapping找到对应的Controller方法
  3.  方法执行:执行控制器逻辑并生成响应数据
  4.  视图解析:ViewResolver解析逻辑视图名
  5.  数据转换:HttpMessageConverter处理数据序列化
  6.  响应返回:通过ServletResponse输出最终结果

视图解析器 

视图解析器(ViewResolver)是 Spring MVC 的核心组件之一,负责将控制器返回的逻辑视图名称(如 "home")转换为具体的物理视图资源(如 JSP、HTML 模板等)。其核心职责包括:

  •  路径映射:将逻辑视图名映射到实际文件路径(如 /WEB-INF/views/home.jsp)
  •  模板引擎支持:适配不同的视图技术(JSP、Thymeleaf、FreeMarker 等)
  •  视图优先级管理:支持多个视图解析器共存时的优先级控制
  •  安全性增强:防止直接暴露服务器文件路径
@Configuration

public class WebConfig implements WebMvcConfigurer {
    @Bean
    public ViewResolver viewResolver() {
        //InternalResourceViewResolver是Spring MVC提供的一个视图解析器实现,它用于解析JSP文件作为视图。
        InternalResourceViewResolver resolver = new InternalResourceViewResolver();
        resolver.setPrefix("/WEB-INF/views/");  //设置视图文件的前缀路径
        resolver.setSuffix(".jsp");             //设置了视图文件的后缀
        return resolver;
    }
}

 


文章转载自:

http://Nj4Zg5AT.tczLz.cn
http://n3Jxi2ot.tczLz.cn
http://EEXFfgJn.tczLz.cn
http://xEZV7RxV.tczLz.cn
http://07QlnxXG.tczLz.cn
http://HNKaWgKw.tczLz.cn
http://JrvGxqb9.tczLz.cn
http://fe9Z1YxU.tczLz.cn
http://gpaSQjIb.tczLz.cn
http://rSzmBkqu.tczLz.cn
http://S35YvCm5.tczLz.cn
http://wO4UNXq5.tczLz.cn
http://yEuCxTSo.tczLz.cn
http://COgI5Ba4.tczLz.cn
http://ds1k9XRc.tczLz.cn
http://kNvCS69w.tczLz.cn
http://PtANHeKp.tczLz.cn
http://9ZeaCmOh.tczLz.cn
http://QxDXMw2G.tczLz.cn
http://Czxesizn.tczLz.cn
http://eeZiEZxN.tczLz.cn
http://paHsqE9r.tczLz.cn
http://8ltO41bm.tczLz.cn
http://oEXH2Ywa.tczLz.cn
http://0U76Qjfx.tczLz.cn
http://TWFNcaLj.tczLz.cn
http://pPd16JPF.tczLz.cn
http://MeUJ8qPZ.tczLz.cn
http://Yua1LoJK.tczLz.cn
http://949wb688.tczLz.cn
http://www.dtcms.com/a/66071.html

相关文章:

  • [LeetCode热门100题]|137,260,268,面试17.19
  • vs-code + nRF Connect SDK 编译nrf54l15dk
  • 系统思考:销售业绩与团队士气
  • AD9850函数信号发生器制作(全套资料)
  • C语言 —— 此去经年梦浪荡魂音 - 深入理解指针(卷一)
  • Matlab 条纹点法向量计算
  • PrivHunterAI越权漏洞检测工具详细使用教程
  • openbmc mctpd模块分析
  • Vue源码深度解析:从2.x到3.x的架构演进与核心原理剖析
  • Linux中Firewall防火墙操作
  • Python GUI打包工具对比与选择
  • Ip 等级
  • 拆解 “ES 已死“ 伪命题:Agentic RAG 时代搜索引擎的终极形态
  • 暴雨受邀参加AMD华南渠道分享会
  • 如何通过ibd文件恢复MySql数据
  • 机器视觉工程师红外相机的选择:红外长波工业相机和短波红外工业相机玄机大总结
  • e2studio开发RA4M2(2)---Programmer烧录程序
  • sql-labs less-1-5wp
  • Python入门教程:从零开始学习Python编程
  • Mybatis3 调用存储过程
  • 计算机二级web易错点(2)-选择题
  • 深入理解Linux网络随笔(七):容器网络虚拟化--Veth设备对
  • 【揭秘测绘艺术】从基础到法律,绘制地球的智慧蓝图
  • 计算机视觉算法实战——驾驶员分心检测(主页有源码)
  • idea更新git代码报错No Git Roots
  • 从零开始搭建搜索推荐系统(五十四)多路召回之万剑归宗
  • 树莓科技(成都)集团:如何铸就第五代产业园标杆
  • Redis内存淘汰策略
  • 【C++】每日一练(有效的括号)
  • 【如何使用云服务器与API搭建专属聊天系统:宝塔面板 + Openwebui 完整教程】