- 博客(12)
- 资源 (1)
- 收藏
- 关注
原创 掌握@ControllerAdvice配合RequestBodyAdvice/ResponseBodyAdvice使用,让你的选择不仅仅只有拦截器【享学Spring MVC】
前言我们在实际的项目开发中,肯定会有这样的需求:请求时记录请求日志,返回时自动记录返回日志。这些都是与业务没关系的花边功能,若你全都写在Controller的方法内部,那将造成大量的代码重复且严重干扰了业务代码的可读性。可能你第一反应想到的是使用Spring MVC的拦截器HandlerInterceptor来做,此方案整体上还算优雅的,相信大部分公司的同学也都是这么来干的。那么本文就介绍一种...
2019-09-26 23:25:04 7605 9
原创 web九大组件之---HandlerAdapter适配器模式实践源码分析【享学Spring MVC】
前言在分析过Spring MVC最重要的组件:HandlerMapping,本文将继续分析和它息息相关的另外一个组件:HandlerAdapterHandlerAdapter的作用:因为SpringMVC中的Handler可以是任意的形式,只要能处理请求就ok,但是Servlet需要的处理方法的结构却是固定的,都是以request和response为参数的方法。如何让固定的Servlet处理...
2019-09-25 22:45:07 3039 5
原创 CORS跨域资源共享(三):@CrossOrigin/CorsFilter处理跨域请求示例及原理分析【享学Spring MVC】
通过前[两篇文章](https://fangshixiang.blog.csdn.net/article/details/101036506)做好了的铺垫和讲述,现在的你应该了解了`CORS`是怎么回事以及`Spring MVC`对它是如何支持的,我有理由相信你现在完全是有能力去解决`CORS`跨域请求问题,而不用再是两眼一抹黑了。正所谓好人做到底,送佛送到西,小伙伴一直最为关心`Spring MVC`对`CORS`的落地实操示例我还没有给出,当然还有它的处理流程原理分析,那么本文就是你最应该关注和收藏的
2019-09-24 02:19:03 4740 11
原创 CORS跨域资源共享(二):详解Spring MVC对CORS支持的相关类和API【享学Spring MVC】
前言上篇文章通过我本地模拟的实例,让大家非常清晰的看到了CORS跨域访问的一些case,那么本文将聚焦于解决方案、以及方案的原理来更深入的理解Spring MVC中到底是如何对CORS提供支持的呢?...
2019-09-23 15:56:07 2498
原创 CORS跨域资源共享(一):模拟跨域请求以及结果分析,理解同源策略【享学Spring MVC】
前言在我们日常的项目开发时使用AJAX,传统的Ajax请求只能获取在同一个域名下面的资源,但是HTML5打破了这个限制,允许Ajax发起跨域的请求。浏览器是可以发起跨域请求的,比如你可以外链一个外域的图片或者脚本。但是Javascript脚本是不能获取这些资源的内容的,它只能被浏览器执行或渲染。主要原因还是出于安全考虑,浏览器会限制脚本中发起的跨站请求。(同源策略, 即JavaScript或Co...
2019-09-20 15:26:42 3345 19
原创 @Qualifier高级应用---按类别批量依赖注入(QualifierAnnotationAutowireCandidateResolver原理详解)【享学Spring】
QualifierAnnotationAutowireCandidateResolver详解它可以被称为@Qualifier注解的实现类,专门用于解析此注解。至于@Qualifier有什么用如何用,这里就不啰嗦了,结合上面疑问进行原理分析如下:// @since 2.5public class QualifierAnnotationAutowireCandidateResolver exte...
2019-09-17 00:36:09 3078 5
原创 为何一个@LoadBalanced注解就让RestTemplate拥有负载均衡的能力?【享学Spring Cloud】
在`Spring Cloud`微服务应用体系中,远程调用都应负载均衡。我们在使用`RestTemplate`作为远程调用客户端的时候,开启负载均衡极其简单:**一个`@LoadBalanced`注解就搞定了**。
2019-09-16 21:41:32 7384 5
原创 RestTemplate的使用和原理你都烂熟于胸了吗?【享学Spring MVC】
前言在阅读本篇之前,建议先阅读开山篇效果更佳。我们都知道的是:RestTemplate是Spring提供的用于访问Rest服务的客户端,它提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。因此对于那些在Spring环境下还在使用HttpClient(或其它Client)的同学,今儿看完本文后,强烈建议你切换到RestTemplate 。RestTemplate简化了与h...
2019-09-13 14:18:22 6836 10
原创 RestTemplate组件:ClientHttpRequestFactory、ClientHttpRequestInterceptor、ResponseExtractor【享学Spring MVC】
前言本文为深入了解Spring提供的Rest调用客户端RestTemplate做准备,对和它相关的周边类做一个打点。因为单词相似,请注意区分RestTemplate和RedisTemplate哦~ClientHttpRequestFactory它是个函数式接口,用于根据URI和HttpMethod创建出一个ClientHttpRequest来~说明:ClientHttpRequest...
2019-09-12 00:14:21 42407 6
原创 从原理层面掌握@InitBinder的使用【享学Spring MVC】
前言在使用Spring MVC框架的项目中,相信小伙伴们经常会遇到一些前端给后端传值的问题,比如最经典的问题是:Date类型(LocalDate类型等等)前端如何传,后端可以用Date类型接收呢?当然关于Date类型的传递,业界也有两个通用的解决方案:使用时间戳使用String字符串接收但有时候使用这两种方式,总感觉有不方便的地方,不够面向对象。那么本文就再介绍一个黑科技:使用@In...
2019-09-10 02:21:47 3060 4
原创 你知道@RequestMapping的name属性有什么用吗?带你了解URI Builder模式(UriComponents/UriComponentsBuilder)【享学Spring MVC】
前言你知道@RequestMapping的name属性有什么用吗?
2019-09-08 20:53:38 2698 2
原创 HandlerMethodArgumentResolver(四):自定参数解析器处理特定场景需求,介绍PropertyNamingStrategy的使用【享学Spring MVC】
前言前面通过三篇文章介绍了HandlerMethodArgumentResolver这个参数解析器以及它的所有内置实现,相信看过的小伙伴对它的加载、初始化、处理原理等等已能够做到了心中有数了。Spring MVC内置注册了灰常多的处理器给我们的使用,不客气说几乎100%的case我们都是足够用了的。但既然我们已经理解到了HandlerMethodArgumentResolver它深层的作用原理...
2019-09-02 14:54:46 2291 1
YourBatman的端午节祝福:代码雨可执行jar包
2022-06-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人