SpringMVC初学

SpringMVC是Spring框架的一个模块,用于实现Web层的开发。它是一个基于Java的轻量级Web框架,采用了MVC(Model - View - Controller)设计模式,将Web应用程序分为模型(Model)、视图(View)和控制器(Controller)三个部分,使得代码结构更加清晰,便于开发和维护。

模型(Model):模型主要负责存储数据,例如从数据库中查询出来的数据或者用户提交的表单数据等。

视图(View):视图主要负责展示数据,例如HTML页面、JSP页面等,通过模板引擎将模型中的数据渲染到页面上,展示给用户。

控制器(Controller):控制器主要负责处理用户的请求,根据用户的请求调用模型获取数据,然后将数据传递给视图进行展示。控制器是连接模型和视图的桥梁,它接收用户的请求,解析请求参数,调用业务逻辑层的方法处理请求,最后将处理结果返回给用户。

请求与响应

请求

在Web开发中,请求是指客户端(如浏览器)向服务器发送的请求。请求通常包含请求行、请求头和请求体三个部分。

请求行包括请求方法(如GET、POST、PUT、DELETE等)、请求的URL(统一资源定位符)和HTTP协议版本。请求方法决定了对服务器的操作类型,例如GET方法用于获取资源,POST方法用于提交数据。

请求头包含了客户端的一些信息,如客户端的浏览器类型、语言、请求的资源类型等,服务器可以根据请求头中的信息来处理请求。

请求体则包含了客户端发送给服务器的数据,例如表单数据、文件上传等。

响应

响应是指服务器对客户端请求的回复。响应也包含响应行、响应头和响应体三个部分。

响应行包括HTTP协议版本、状态码和状态消息。状态码是一个三位数字,用于表示请求的状态,例如200表示请求成功,404表示资源未找到,500表示服务器内部错误等。

响应头包含了服务器的一些信息,如服务器的类型、响应的内容类型、响应的编码等,客户端可以根据响应头中的信息来解析响应体。

响应体则是服务器返回给客户端的数据,例如HTML页面、JSON数据、图片等。

REST风格

REST(Representational State Transfer,表述性状态转移)风格是一种软件架构风格,它基于HTTP协议,用于设计网络应用程序。REST风格的核心思想是将网络应用程序中的资源(如用户、订单、文章等)通过统一的接口进行访问和操作。

资源

在REST风格中,资源是核心概念。资源可以是任何东西,如用户、订单、文章等。每个资源都有一个唯一的标识符(URI),通过URI可以访问和操作资源。

统一接口

REST风格定义了一组统一的接口,用于对资源进行操作。这些接口包括GET(获取资源)、POST(创建资源)、PUT(更新资源)、DELETE(删除资源)等HTTP方法。通过这些统一的接口,客户端可以对资源进行各种操作。

无状态

REST风格要求每个请求都包含足够的信息来理解请求的上下文,服务器不会保存任何客户端请求之间的状态信息。这意味着每个请求都是独立的,服务器不需要记住客户端的任何历史信息,从而提高了系统的可伸缩性和可靠性。

超媒体作为应用状态的引擎(HATEOAS)

REST风格强调超媒体(Hypermedia)作为应用状态的引擎。超媒体是指在资源的表示中包含超链接,客户端可以通过超链接来发现和访问其他资源。这样,客户端可以通过超媒体动态地发现和操作资源,而不需要事先知道资源的URI。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容