springMVC专题
文章平均质量分 95
smart哥
一名有10余年经验的互联网老兵,历经从传统软件公司到大型互联网公司的洗礼,早年在中兴通讯等大型通信公司担任项目leader,后随着互联网的崛起,先后在前美团支付等大型互联网公司担任架构师。对互联网架构底层技术有相当的研究和独特的见解,在多个领域有着丰富的实战经验。
展开
-
Spring MVC 教程-Http中的Content-Type详解
现在搞前端的不学好http有关的知识已经不行啦~笔者也是后知后觉,在搞node的时候意识到网络方面的薄弱,开始学起http相关知识。这一篇是非常基础的讲解,适合入门人员掌握content-type的知识和有经验的人员查阅。可以说,弄懂了content-type,你才能在学习http的道路上走的更加顺畅,让我们满怀激情的开始吧~~原创 2024-08-07 17:50:47 · 686 阅读 · 0 评论 -
Spring MVC 教程-浏览器安全策略 & CORS
如果两个URL的协议、主机名和端口号都是相同的,那么这两个URL就是同源的,下表给出了与 URLURL结果原因同源只有路径不同非同源协议不同非同源端口号不同非同源主机名不同也就是说当在这个网站中向和三个地址发起AXJX请求都会失败并且会报跨域的错误。这就是浏览器的同源策略,只能访问同源的数据。原创 2024-08-07 17:48:55 · 612 阅读 · 0 评论 -
Spring MVC 教程-CORS通信
CORS 需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能。整个 CORS 通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS 通信与普通的 AJAX 通信没有差别,代码完全一样。浏览器一旦发现 AJAX 请求跨域,就会自动添加一些附加的头信息,有时还会多出一次附加的请求,但用户不会有感知。因此,实现 CORS 通信的关键是服务器。只要服务器实现了 CORS 接口,就可以跨域通信。原创 2024-08-07 08:13:57 · 623 阅读 · 0 评论 -
Spring MVC 教程-类容协商,颠覆你的认知
简单点理解,媒体类型就是用来表示内容的格式,比如可以用来表示http请求体和响应体内容的格式。英文称呼:MineType或者MediaType本文的内容是非常非常重要的一个知识点,建议大家多看2遍,敲一敲+debug,测试测试,掌握就比较容易了;掌握这些之后才能更好的用好SpringMVC和SpringBoot。原创 2024-08-07 08:11:51 · 932 阅读 · 0 评论 -
Spring MVC 教程-跨域问题详解
同源策略是浏览器的一个重要的安全策略,它用于限制一个源的文档或其加载的脚本如何与另外一个源进行交互,它能够隔绝恶意文档,减少被攻击的媒介。如果两个URL的协议主机名和端口号都是相同的,那么这两个URL就是同源的,否则不同源,不同源的访问就会出现跨域问题,就会出现上面的错误。下表给出了与 URLURL结果原因同源只有路径不同非同源协议不同非同源端口号不同非同源主机名不同也就是说当在这个网站中向和三个地址发起AXJX请求都会失败并且会报跨域的错误。原创 2024-08-07 08:04:59 · 1116 阅读 · 0 评论 -
Spring MVC 教程-Converter转换器详解
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!本文将讲解Spring中的另外一个知识点:SpringMVC中转换器Converter的使用。好陌生啊,这玩意是干啥的呢?请往下看。原创 2024-08-06 20:49:21 · 548 阅读 · 0 评论 -
Spring MVC 教程-重定向和转向详解
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-08-06 20:47:32 · 1029 阅读 · 0 评论 -
Spring MVC 教程-@SessionAttribute详解
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!本文将介绍SpringMVC中的@SessionAttribute注解。原创 2024-08-06 20:45:10 · 1335 阅读 · 0 评论 -
Spring MVC 教程-@RequestAttribute详解
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!本文将介绍SpringMVC中的@RequestAttribute注解。原创 2024-08-06 09:04:05 · 930 阅读 · 0 评论 -
Spring MVC 教程-@CookieValue详解
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!当我们在接口中想获取cookie值的时候,怎么写代码更简单呢?此时可以使用SpringMVC中的@CookieValue注解来标注参数,下面来看具体的用法。原创 2024-08-06 09:01:57 · 880 阅读 · 0 评论 -
Spring MVC 教程-@RequestHeader详解
RequestBody注解源码如下,可以用来标注在接口的参数上,用来获取HTTP请求header中的值,下面通过案例列出常见的4种用法。/*** header的名称*//*** 同value,指定header的名称*//*** 是否是必须的,默认为ture,若指定的name在请求中不存在且未指定默认值defaultValue,则会出现异常*//*** 默认值*/原创 2024-08-06 08:59:43 · 1427 阅读 · 0 评论 -
Spring MVC 教程-@RequestBody原理解密
标注在接口的参数上,用来获取HTTP请求body中的值,下面通过案例列出常见的用法。/*** body是不是必须的,默认为true,若不传body,会有异常;若为false,这body可不传*/原创 2024-08-05 08:25:16 · 976 阅读 · 0 评论 -
Spring MVC 教程-@RequestParam用法及原理详解
RequestParam注解用来标注在控制器方法的参数上,springmvc从request中获取请求的值赋值给方法的参数@RequestParam指定name时,可以获取request中指定参数的值,相当于request.getParameter(name)或request.getParameters(name)@RequestParam未指定name,参数类型为:Map时,用来接收request中所有参数的值,Map中key为参数名称,value为参数的值。原创 2024-08-05 08:21:22 · 1065 阅读 · 0 评论 -
Spring MVC 教程-参数解析器HandlerMethodArgumentResolver解密
RequestParam注解我们用到的比较多,被这个注解标注的参数,会从request的请求参数中取值,参数值为request.getParameter("@RequestParam注解name的值")/*** 对应request中参数名称*//*** 同value*//*** 请求中是否必须有这个参数*//*** 默认值*/本文带大家了解了参数解析器。原创 2024-08-05 08:16:37 · 1012 阅读 · 0 评论 -
Spring MVC 教程-接口调用利器RestTemplate
发送http请求,估计很多人用过httpclient和okhttp,确实挺好用的,而Spring web中的RestTemplate和这俩的功能类似,也是用来发送http请求的,不过用法上面比前面的2位要容易很多。spring框架提供的RestTemplate类可用于在应用中调用rest服务,它简化了与http服务的通信方式,统一了RESTful的标准,封装了http链接, 我们只需要传入url及返回值类型即可。原创 2024-08-05 08:14:14 · 696 阅读 · 0 评论 -
Spring MVC 教程-RESTful接口详解
REST:Representational State Transfer,表现层资源状态转移。a>资源资源是一种看待服务器的方式,即,将服务器看作是由很多离散的资源组成。每个资源是服务器上一个可命名的抽象概念。因为资源是一个抽象的概念,所以它不仅仅能代表服务器文件系统中的一个文件、数据库中的一张表等等具体的东西,可以将资源设计的要多抽象有多抽象,只要想象力允许而且客户端应用开发者能够理解。与面向对象设计类似,资源是以名词为核心来组织的,首先关注的是名词。一个 资源可以由一个或多个URI来标识。原创 2024-08-04 08:41:41 · 884 阅读 · 0 评论 -
Spring MVC 教程-ResponseBodyAdvice:对@ResponseBody进行增强
这个可以对@ResponseBody进行增强,可以拦截@ResponseBody标注的方法的返回值,对返回值进行统一处理,比如进行加密、包装等操作;比如通过他可以实现统一的返回值。/*** rest接口通用返回值数据结构*///接口状态(成功还是失败)//错误码//提示信息//数据return msg;return success(data, "操作成功!");原创 2024-08-04 08:39:25 · 823 阅读 · 0 评论 -
Spring MVC 教程-RequestBodyAdvice:对@ReuqestBody进行增强
在实际项目中,有时候我们需要在请求之前或之后做一些操作,比如:对参数进行解密,对所有的返回值进行加密等。这些与业务无关的操作,我们没有必要在每个 controller 方法中都写一遍,这里我们就可以使用 springmvc 中的@ControllerAdvice 和 RequestBodyAdvice、ResponseBodyAdvice 来对请求前后进行处理,本质上就是 aop 的思想。原创 2024-08-04 08:36:37 · 774 阅读 · 0 评论 -
Spring MVC 教程-源码解析SpringMVC容器的启动过程
SpringMVC,建议大家使用全注解的方式本文以全注解的方式为基础,来解说SpringMVC容器启动的整个流程。这里是重点:这个方法中干了4件事情创建父容器,只是实例化了,并未启动创建了监听器ContextLoaderListener,这是一个ServletContextListener类型的监听器,稍后会在这个监听器中启动父容器创建springmvc容器,只是实例化了,并未启动,启动的事情会在DispatcherServlet#init中做,稍后会说。原创 2024-08-03 09:19:18 · 911 阅读 · 0 评论 -
Spring MVC 教程-源码解析SpringMVC处理请求的流程
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!文将通过阅读源码的方式带大家了解springmvc处理请求的完整流程,干货满满。原创 2024-08-03 09:13:57 · 836 阅读 · 0 评论 -
Spring MVC 教程-全注解的方式&原理解析
上面的MvcConfig配置类中,我们定义了一个拦截器,这个类的代码如下@Component@OverrideSystem.out.println("这是MyInterceptor拦截器");建议大家自己去实战一下,光看是不行的,看可能觉得什么都会了,但是抛开文章自己去试试,又是一番景象,学技术一定要多动手。有问题欢迎留言。原创 2024-08-03 09:10:41 · 645 阅读 · 0 评论 -
Spring MVC 教程-实战篇:通用返回值&异常处理设计
本文内容主要有2点:统一返回值、统一异常的处理,这2点大家要好好掌握,目前业界很少使用springmvc直接开发接口了,更多的是采用springboot来开发接口,本文的内容直接可以用到springboot中,来优化咱们的系统。原创 2024-08-02 17:27:58 · 560 阅读 · 0 评论 -
Spring MVC 教程-统一异常处理
本文详细介绍了springmvc集中统一异常处理的具体用法,大家消化一下,重点主要用到了2个注解和目前多数系统都是前后端分离了,后端所有的接口都返回json格式的数据,所以下一篇文章,来一篇实战的文章,带大家看下在controller这层,如何实现通用的一些设计,主要包含了通用返回值及统一处理的设计。原创 2024-08-02 17:25:36 · 673 阅读 · 0 评论 -
Spring MVC 教程-拦截器怎么用?
自定义一个类,需要实现接口,如下,然后实现具体的方法@Override@Override@Override配置如下,需要将自定义的拦截器添加到springmvc配置文件中可以同时配置多个拦截器,每个拦截器通过标签来定义,多个拦截器之间可以指定顺序,顺序和定义的顺序一致每个拦截器需要指定实现类、拦截的url、排除的url-- interceptors用来定义拦截器,其内部可以定义多个拦截器 -->-- mvc:interceptor 标签用来定义一个拦截器 -->原创 2024-08-02 17:22:40 · 1021 阅读 · 0 评论 -
Spring MVC 教程-如何集成静态资源?
tomcat默认能够处理jsp和静态资源,是因为tomcat中默认有2个servlet:default和jsp到此我们已经知道如何让springmvc来处理所有请求了,只需要在web.xml中调整一下url-pattern的值为/就可以了默认情况下,springmvc无法处理静态资源,本文介绍了2种方式,大家可以回头在再去看看,第一种需要依赖于web容器中的default这个servlet,使用上面对web容器有依赖作用;而第2种方式是springmvc推荐的方式,更好一些,对web容器没有依赖。原创 2024-08-02 08:44:53 · 825 阅读 · 0 评论 -
Spring MVC 教程-异步处理请求
当接口中有大量的耗时的操作,且这些耗时的操作让线程处于等待状态的时候,此时为了提升系统的性能,可以将接口调整为异步处理请求的方式。原创 2024-08-02 08:42:51 · 761 阅读 · 0 评论 -
Spring MVC 教程-SpringMVC返回null是什么意思?
第1种:返回视图,即页面,此时返回值可以是String(视图名称)、或者ModelAndView第2种:返回json格式数据,此时需要用到@ResponseBody注解第3种:方法返回值为void或者return null;此时需要我们在方法中自己通过HttpServletResponse对象来主动向客户端输出结果。原创 2024-08-02 08:39:50 · 658 阅读 · 0 评论 -
Spring MVC 教程-返回json格式数据&通用返回值设计
掌握@ResponseBody的用法,用来返回json格式的数据,注意需要在springmvc配置文件中添加注解驱动的配置,否则调用会报错-- 添加mvc注解驱动 -->掌握通用接口返回值的用法。原创 2024-08-02 08:37:29 · 655 阅读 · 0 评论 -
Spring MVC 教程-返回页面常见的5种方式
响应页面通常有2种方式,第1种返回ModelAndView,这种方式比较适合页面中需要后端传递数据的,第2种方式直接返回视图的名称,这种适合无需传递数据的。springmvc容器中配置InternalResourceViewResolver视图解析器,用来简化controller中视图的名称掌握重新的2种方式,重定向的关键点是视图名称要以开头,这样springmvc才知道你需要springmvc来帮你执行重定向操作。原创 2024-08-01 20:03:43 · 889 阅读 · 0 评论 -
Spring MVC 教程-多文件上传
- bean名称必须为multipartResolver -->--maxUploadSizePerFile:单个文件大小限制(byte)maxUploadSize:整个请求大小限制(byte)-->http上传的请求类型为multipart/form-data类型,springmvc内部需要为这种请求指定解析器,解析器的类型为MultipartResolver 有2个实现类,这里我们使用 CommonsMultipartResolver 作为解析器来解析文件上传的http请求。原创 2024-08-01 20:00:37 · 849 阅读 · 0 评论 -
Spring MVC 教程-@RequestBody接收Json格式数据
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!原创 2024-08-01 19:56:03 · 1075 阅读 · 0 评论 -
Spring MVC 教程-如何接受请求中的参数?
学习必须往深处挖,挖的越深,基础越扎实!阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析码哥源码部分码哥讲源码-原理源码篇【2024年最新大厂关于线程池使用的场景题】码哥讲源码【炸雷啦!炸雷啦!黄光头他终于跑路啦!】码哥讲源码-【jvm课程前置知识及c/c++调试环境搭建】码哥讲源码-原理源码篇【揭秘join方法的唤醒本质上决定于jvm的底层析构函数】码哥源码-原理源码篇【Doug Lea为什么要将成员变量原创 2024-08-01 08:43:00 · 1016 阅读 · 0 评论 -
Spring MVC 教程-接口测试利器
作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!SpringMVC系列或者是SpringBoot系列中都会有大量的案例,这些案例都需要运行来验证效果,所以急需一款高效的接口测试工具。可能大家用的比较多的是swagger或者postman,这2个确实不错,不过今天今天给大家推荐一种更简单的接口测试工具。原创 2024-08-01 08:39:43 · 740 阅读 · 0 评论 -
Spring MVC 教程-@Controller、@RequestMapping
RequestMaping中value、path、consumers、producers稍微用到的多一些,其他几个属性用到的比较少,了解即可。关于6种规则,大家可以自己去试试,会springboot的朋友,可以直接使用springboot快速写一些用例结合postman测试下,加深记忆和理解。原创 2024-08-01 08:36:20 · 932 阅读 · 0 评论 -
Spring MVC 教程-Helloword
本文主要通过一个案例详细介绍了springmvc开发项目的一个过程,大家把案例敲一遍,有问题,欢迎留言交流。原创 2024-08-01 08:33:53 · 821 阅读 · 0 评论