spring
文章平均质量分 97
Munger6
这个作者很懒,什么都没留下…
展开
-
FactoryBean与BeanFactory 区别
BeanFactory是接口,提供了OC容器最基本的形式,给具体的IOC容器的实现提供了规范, FactoryBean也是接口,为IOC容器中Bean的实现提供了更加灵活的方式,FactoryBean在IOC容器的基础上给Bean的实现加上了一个简单工厂模式和装饰模式(如果想了解装饰模式参考:修饰者模式(装饰者模式,Decoration)我们可以在getObject()方法中灵活配置。其实在Spring源码中有很多FactoryBean的实现类.区别:BeanFacto...转载 2020-08-20 14:57:27 · 796 阅读 · 0 评论 -
Spring中有哪些扩展的地方
spring初始化的扩展点https://www.jianshu.com/p/397c15cbf34anvokeBeanFactoryPostProcessors(beanFactory)方法就是第一小节提到的BeanDefinitionRegistryPostProcessor和BeanFactoryPostProcessor的调用。invokeBeanFactoryPostProcessors方法的调用逻辑:如果beanFactory是BeanDefinitionRegistr.原创 2020-08-06 18:34:49 · 409 阅读 · 0 评论 -
参数解析,转换实现方案对比
java系统开发的时候,相信大家都需要获取当前登录用户,用来记录操作员、格式化日期参数、操作线程信息、分页配置信息、将数据信息驼峰与数据库命名方式进行转换等。 针对这种参数解析,我们有两种方案可采用:WebArgumentResolver和HandlerMethodArgumentResolver; 首先介绍一下会遇到的问题: 第一个问题:在配置文件中自定义的argument只有第一个有效,后面的参数都无效。相关的配置信息如下:...原创 2020-07-17 11:24:29 · 232 阅读 · 0 评论 -
Swagger自动生成API接口文档
spring-boot作为当前最为流行的Java web开发脚手架,相信越来越多的开发者会使用其来构建企业级的RESTFul API接口。这些接口不但会服务于传统的web端(b/s),也会服务于移动端。在实际开发过程中,这些接口还要提供给开发测试进行相关的白盒测试,那么势必存在如何在多人协作中共享和及时更新API开发接口文档的问题。假如你已经对传统的wiki文档共享方式所带来的弊端深恶痛绝,那么尝试一下Swagger2 方式,一定会让你有不一样的开发体验:功能丰富 :支持多种注解,自动生成接口文档界面转载 2020-07-17 10:48:50 · 1272 阅读 · 0 评论 -
@Bean注解详解
转载自:https://www.cnblogs.com/cxuanBlog/p/11179439.html@Bean 注解全解析目录 @Bean 基础声明 @Bean 基本构成及其使用 @Bean 注解与其他注解产生的火花 @Profile 注解 @Scope 注解 @Lazy 注解 @DependsOn 注解 @Primary 注解 随着SpringBoot的流行,基于注解式开发的热潮逐渐覆盖了基于XML纯配置的开发,而作为...转载 2020-07-17 10:28:56 · 12570 阅读 · 1 评论 -
Http请求封装的三进阶
系统与系统之间的交互往往会使用到http请求,而我们发起http请求过程繁琐;因此我们需要对Http请求进行封装以方便使用;最近项目中接触到了一个经常被其他项目调用的项目主体,研究其演进架构,将其精髓记录下来 首先我们来看一看最原始的Http请求的代码书写/** * http请求第一个版本(直接发起Http请求) * * @author hzm ${2020-06-20 17:57} */public class Http { /** * http请...原创 2020-07-10 17:24:52 · 1706 阅读 · 1 评论 -
Spring扩展接口之FactoryBean
是什么 FactoryBean的源码比较简单,大家可以细读下其注释,我做了简单的如下翻译/** * 实现此接口的bean不能用作普通bean。此bean暴露的对象是通过getObject()创建的对象,而不是它自身 */public interface FactoryBean<T> { /** * 返回此工厂管理的对象的实例(可能是共享的或独立的,取决于isSingleton()的返回值) */ @Nullable T getObj转载 2020-07-10 16:56:30 · 242 阅读 · 0 评论 -
MethodInterceptor实现自定义的AOP操作类
转载自:https://blog.csdn.net/u013905744/article/details/91364736今天遇到一个使用MethodInterceptor 的类,无法实现spring初始化,学习下这个方法的用法如果对于spring MethodInterceptor或spring aop概念不清楚,参考:spring aop, spring interceptor, springmvc interceptor有什么区别?以下是在spring boot环境下执行的在..转载 2020-06-11 19:33:36 · 1333 阅读 · 0 评论 -
处理器拦截器(HandlerInterceptor)详解
作者:编程界的小学生链接:https://www.jianshu.com/p/1e8d088c2be9来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。简介SpringWebMVC的处理器拦截器,类似于Servlet开发中的过滤器Filter,用于处理器进行预处理和后处理。应用场景1、日志记录,可以记录请求信息的日志,以便进行信息监控、信息统计等。...转载 2020-04-30 18:19:47 · 2186 阅读 · 0 评论 -
SpringMVC前后端接口使用规范
@RestController@RequestMapping("/test")public class TestController { // application/x-www-form-urlencoded // 可选(即非必须,因为这种情况的数据@RequestParam, @ModelAttribute也可以处理,当然@RequestBody也能处理); ...转载 2019-11-22 15:15:16 · 543 阅读 · 0 评论 -
SpringMVC设计原理与源码分析
1、SpringMvc调用的流程图:2、SpringMvc核心对象描述: ①DispatcherServlet为核心,负责请求的接受和处理及结果返回; ②HandlerMapping是url到Controller的映射组件,在容器初始化时按照Map<url, Controller>保存在容器中,从HandlerMapping中查找处理req...原创 2019-07-05 16:22:02 · 486 阅读 · 0 评论 -
Spring核心容器之其他高级特性
1、lazy-init实例化 含义:普通的bean的初始化是在容器启动初始化阶段执行的,而被lazy-init修饰的bean 则是在从容器里第一次进行context.getBean(“”)时进行触发。Spring 启动的时候会把所有bean信息(包括XML和注解)解析转化成Spring能够识别的BeanDefinition并存到Hashmap里供下面的初始化时用。接下来对每个Bean...原创 2019-07-05 14:06:45 · 140 阅读 · 0 评论 -
SpringAop核心概念与原理
1,AOP核心概念2,AOP设计原理3、源码分析AOP核心概念:为方便的理解AOP的核心概念,我们首先贴出aop的xml配置项;<beans xmlns="http://www.springframework.org/schema/beans" xmlns:tx="http://www.springframework.org/schema/tx"...原创 2019-07-10 16:38:26 · 910 阅读 · 0 评论 -
Spring核心容器实现之 Bean实例化与依赖注入
1、依赖注入在何时发生? ①第一次调用getBean() IOC容器触发依赖注入 ②容器解析注册Bean定义时预实例化触发依赖注入2、依赖注入实现过程: 入口getBean()/*****实现类:AbstractBeanFactory # getBean() * 1,如果是单例模式:则首先从缓存中查找; 定义为原型则创建一个新的...原创 2019-06-28 18:55:16 · 932 阅读 · 0 评论 -
Spring核心容器实现之容器初始化
体系设计1,BeanFactory:Bean工厂 为IOC容器管理对象间依赖关系提供基础服务。 顶层接口:BeanFactory,定义IOC容器基本功能规范, 第二层接口:ListableBeanFactory-可列表Bean、HierarchicalBeanFactory -继承关系Bean、AutowireCapableBeanFactory - 自动装配...原创 2019-06-26 17:03:36 · 358 阅读 · 0 评论 -
spring经典面试题
1、spring5的新特性 依赖 JDK 8+和 Java EE7+以上版本 首次采用反应式编程模型 支持使用注解进行编程 新增函数式编程 支持使用 REST 断点执行反应式编程 支持 HTTP 2.0 新增 Kotlin 和 Spring WebFlux 可使用 Lambda 表达式...原创 2019-06-21 12:47:07 · 254 阅读 · 0 评论