Spring MVC 程序开发(1)

目录

1、什么是 SpringMVC

1、Tomcat 和 Servlet 分别是什么?有什么关系?

Servlet 是 java 官方定义的 web 开发的标准规范;Tomcat 是 Servlet 容器(遵循 Servlet 规范来实现的 Web 服务器),可以统一管理 Servlet (整个生命周期)。

2、SpringMVC 和 Web 服务器,Servlet 的关系?

SpringMVC 是内置的定制过的 Web 服务器,而 Web 服务器遵循 Servlet 规范。总的来说,SpringMVC 基于 Servlet 标准,又进一步封装了,然后提供给我们更方便的使用方式。因此,我们开发的内容是基于 SpringMVC 定义的 Web 开发标准。

MVC 是 Model View Controller 的缩写,它是软件工程中的一种软件架构模式,它把软件系统分为模型、视图和控制器三个基本部分。

  • Model(模型)是应用程序中用于处理数据逻辑的部分,通常负责在数据库中存取数据。
  • View(视图)是应用程序中处理数据显示的部分,通常是依据模型数据创建的。
  • Controller(控制器)是应用程序中处理用户交互的部分。

2、返回数据

2.1、返回 JSON 对象

1.@ResponseBody 注解的作用是将 Controller 的方法返回的对象,通过适当的转换器转换为指定的格式,然后写入到 response 对象的 body 区,通常用来返回 JSON 数据或者是 XML 数据。即将 Java 对象转换为 JSON 格式的数据,然后直接写在 HTTP response 的 body 中。

  1. 当 Controller 类上方法都返回 JSON 数据时,需要注解 @Controller 和 @ResponseBody,此时,可以使用 @RestController来代替这两个注解。



2.2、请求转发

不返回 JSON 数据,有转发和重定向网页两种方式,都不能使用 @ResponseBody 注解,且返回值只能是 String,表示资源路径。


抓包的结果为:

2.3、请求重定向


抓包的结果为:

转发和重定向的区别:

  1. 请求重定向将请求重新定位到资源,请求转发是服务器端转发。
  2. 请求重定向地址发生变化,请求转发地址不发生变化。
  3. 请求重定向不存在原来的外部资源不能访问,请求转发有可能造成原来的外部资源不能访问(如果资源和转发的页面不在同一目录下,就会导致外部资源不能访问)

2.4、自定义返回的内容


相关推荐
小bo波5 小时前
从"任意文件复制"深挖Java I/O:字符流与字节流的本质抉择
java·nio·io流·后端开发·文件复制
nanxun8861 天前
记一次诡异的 Docker 容器"串包"故障排查
java
用户1563068103511 天前
Day01 | Java 基础(Java SE)
java
行者全栈架构师1 天前
Maven dependency:tree 的 8 个高级用法
java·后端
行者全栈架构师2 天前
IDEA 中 Maven 项目的 15 个红色报错快速解决方法
java·后端
令人头秃的代码0_02 天前
mac(m5)平台编译openjdk
java
唐青枫3 天前
Java JDBC 实战指南:从 Connection 到事务和连接池
java
一个做软件开发的牛马3 天前
MyBatis-Plus 从零实战:完整搭建可运行 Demo,BaseMapper 零 SQL、Wrapper 条件构造、分页插件与代码生成器详解
java·后端
用户3721574261353 天前
Java 处理 PDF 图片:提取 PDF 中的图片,并压缩 PDF 图片体积
java
用户3721574261353 天前
Java 打印 Word 文档:从基础打印到高级设置
java