spring
小欧的哈士奇
毕业于中国某个大学,就职于中国某个企业,拥有研发经验好多、好多、好多年.....
展开
-
(原创)Spring 切面编程 - 简单理解 AOP 框架
目录一、AOP 常用术语二、术语理解1.连接点(Jion point)2.切点(Pointcut)3.通知(Advice)4.切面(Aspect)5.织入(Weaving)6.引入(Introduction)一、AOP 常用术语连接点(Join point) 切点(Pointcut) 通知(Advice) 切面(Aspect) 织入(Weaving)...原创 2020-03-08 15:48:22 · 295 阅读 · 0 评论 -
(原创)Spring 依赖注入 - 运行时进行值注入的两种方法
目录一、背景二、用法介绍1.属性占位符2.Spring表达式语言(SpEL)一、背景通常我们讨论依赖注入时,指的都是将一个 bean 引用注入到另一个 bean 的属性或构造器中,它通常是指对象与对象之间的关联。除此之外,bean 的装配还可以将一个值注入到 bean 的属性或构造器中。但是值注入经常会造成硬编码,如下代码所示:@Beanpublic People ...原创 2020-03-04 23:23:23 · 570 阅读 · 0 评论 -
(原创)Spring 依赖注入 - 通过控制作用域解决 bean 的重用或污染问题
一、背景在默认情况下,Spring 上下文中所有的 bean 都是以单例的形式创建。但是在一些场景中,会发现一个 bean 是可能带有状态的,因此重用并不安全。或者是某些场景下,希望 bean 能带有某些不同的值,如会话中不同用户的信息。这时候就需要控制 bean 的作用域了。二、分类Spring 中定义了 bean 有以下几个作用域:单例(Singleton):整个上下文中,每个...原创 2020-03-04 16:07:53 · 281 阅读 · 0 评论 -
(原创)Spring 依赖注入 - 自动装配歧义性的两种解决方式
一、背景在进行自动装配中,Spring 发现存在多个符合依赖条件的 bean 时,会产生歧义性,并抛出异常。例如:// 自动装配@Autowiredpublic void setPeople(People people) { this.people = people;}// 组件1@Componentpublic class Boy implements Peop...原创 2020-03-01 17:37:06 · 302 阅读 · 0 评论 -
(原创)Spring 依赖注入 - @Conditional 注解实现条件化创建 Bean
目录一、背景二、使用方法一、背景Spring 4 开始引入了一个新的 @Conditional 注解,它可以用到带有@Bean注解的方法上,以实现该 bean 在特定条件下创建。值得一提的是,Spring 4 之后,@Profile 注解也进行了重构,使其基于 @Conditional 来实现。二、使用方法在带有 @Bean 注解的方法上添加 @Conditional 注解...原创 2020-03-01 16:19:15 · 488 阅读 · 0 评论 -
(原创)Spring 依赖注入 - 使用 Profile 解决环境迁移问题
一、场景在软件开发过程中经常需要将应用程序从一个环境迁移到另一个环境中,比如从开发环境迁移到测试,再从测试发布至生产环境,而这些环境的数据库配置,加密算法甚至与其他系统的对接集成配置可能都是不一样的。若不希望每次迁移都重新修改配置,重新重新编译构建,则可以考虑使用 Spring 提供的 Profile 解决方案。需要注意的是,Profile 并不是在构建时做出决策,而是在运行时才进行判断。...原创 2020-03-01 15:36:30 · 352 阅读 · 0 评论 -
(原创)Spring 依赖注入 - 简单总结 bean 的装配方法
目录一、Spring依赖注入(DI)的本质:装配二、综述1.Spring提供三种主要的装配机制:三、要点记录1.自动装配1.1 用于将POJO纳入Spring容器管理的注解含义:1.2 启动组件扫描1.3 自动装配注解2.基于Java风格的显示配置3.基于XML的显示配置4.JavaConfig和XML在配置中的相互引用一、Spring依赖注入(DI...原创 2020-03-01 14:27:04 · 407 阅读 · 0 评论