Zhengshuai PENG

A Small Developer

spring

» spring

Articles by category: spring


others linux clojure cpp java leetcode oracle_db cs-fundamental algorithm regex data_structure design_pattern network web python mysql sword_to_offer git mac elk
2018
24 Jul 2018

[JAVA_Spring] How to POST with Spring RestTemplate

I. Post with RestTemplate We can use Spring RestTemplate class to post a request to a remote Service API. Basically,...

14 May 2018

[JAVA_Spring] Spring AOP 详解二之通知 Advice

在 Spring AOP 详解一之 AspectJ 基于注解配置 AOP 一文中介绍了 Spring 中如何配置 AOP,并且在 LoggingAspect 的日志切面类中,实现了切面的定义,切点的定义。 方法 beforeMethod 就是一个前置通知 Before Advice。 I. 通知...

14 May 2018

[JAVA_Spring] Spring AOP 详解一之 AspectJ 基于注解配置 AOP

I. AspectJ简介 AspectJ 是 Java 社区中最完整最流行的 AOP 框架。在Spring中可以使用基于 AspectJ 注解或者时基于 XML 配置的 AOP 如何在 Spring 中启用 AspectJ 注解的支持? 要在 Spring...

07 May 2018

[JAVA_Spring] Spring AOP Introduction

Spring DI 和 AOP(Aspect Oriented Programming) 被称为 Spring 的两大基石, 这篇 post 先介绍一下 Spring AOP。 之前在学习完 Java 的反射以及动态代理之后,大致的讲了一些 AOP 的原理,请参考 POST:...

27 Apr 2018

[JAVA_Spring] Spring 使用 Java Config 自动装配 Bean

I. Spring Bean 的装配机制 在之前的章节里面我们讲过 Spring 的装配机制: 在 XML 中进行显式配置 通过 Annotation 在 Java 中进行隐式的 bean 发现机制和自动装配 Spring 提供了几种方式既可以单独使用,也可以配合着使用。即便如此,还是尽可能的使用自动装配的机制,显式的配置越少越好。 但是某些时候,比如模块有很多人开发,或者开发之后的源码由别人维护,配置...

22 Apr 2018

[JAVA_Spring] Spring 泛型依赖注入

I.范型依赖注入 泛型依赖注入(Generic Dependency Injection)是 Spring 4.0 开始有的新特性,可以为子类注入子类对应的泛型类型的成员变量的引用。 什么叫做泛型依赖注入呢,就是说我定义了一个泛型类 A, A 依赖于另一个泛型类 B, 那么, A 和 B 的具体子类也会被 Spring 对应的进行自动管理装配。 下面用讲个示例,UML...

22 Apr 2018

[JAVA_Spring] Spring 中通过注解装配 Bean 与 Bean 之间的关系

I. 组件装配 在 Spring 中通过注解配置 Bean 教程中讲述了如何通过注解的方式来配置 Bean, 这一节教程则是要介绍如和通过注解的方式来装配 Bean 与 Bean 之间的关系 组件装配:<context:component-scan> 元素会自动注册 AutowiredAnnotationBeanPostProcessor 实例,该实例可以自动装配具有 @Autowired,@Resource, 和 @Inject...

18 Apr 2018

[JAVA_Spring] Spring 中通过注解配置 Bean

I. 基于注解方式配置 Bean 在之前的教程中, 配置 Bean 的方式都是通过 xml 配置文件中声明 bean 的定义来配置的,那么还有一种方式是通过 java 的注解(annatation) 的方式来进行 bean 的配置和装配 bean 的属性的, 下面我们来讲一下如和通过注解的方式来配置 bean...

17 Apr 2018

[JAVA_Spring] Spring 中通过工厂方法装配 Bean

I. Bean 的装配方式 在之前的教程中,我们都是通过在 application_context.xml 配置文件中 bean 的结点里的 class 属性来配置 Bean 的全类名,底层是通过反射的机制来装配 Bean 的。还有一种方法是通过工厂方法来进行 Bean 的装配,主要有三种: 静态工厂方法 实例工厂方法 Spring Factory...

11 Apr 2018

[JAVA_Spring] Spring 中 Bean 的生命周期

I. 传统 Java 中 Bean 对象的生命周期 在传统java应用中, bean 的生命周期 (Lift Cycle)很简单, 使用 Java 关键字 new 进行一个类的实例化来得到 bean 对象,当一个 bean 不再被使用,则会被...

09 Apr 2018

[JAVA_Spring] Spring 中使用外部属性文件以及 SPEL

I. 使用外部属性文件 从一般的开发可维护性角度来说,一些类似于数据库信息的配置文件,不应该被直接写进 java 类中,而是应该使用配置文件的方式,一方面,在配置文件需要改动的时候,我们并不需要去修改代码,直接修改配置文件即可,非常灵活;另外一方面,这也大大降低了出错的概率。 同理,在 Spring bean 的 xml 配置中, 这些信息也不应该被写进 xml 中,也应该放在配置文件里,Spring 提供了外部属性文件的方式,去加载配置的属性 在配置文件里配置 Bean 时, 有时需要在 Bean...

08 Apr 2018

[JAVA_Spring] Spring 中 Bean 之间的关系以及作用域

I. Bean 之间的关系 Bean 之间的关系分为继承关系和依赖关系 1.继承 Bean 配置 这里继承并不是指的面向对象的父子类继承,而是指的 bean 配置上的继承 Spring 允许继承 bean 的配置,使用 parent 属性, 被继承的 bean 称为父...

08 Apr 2018

[JAVA_Spring] Spring 中 Bean 以XML的方式自动装配

I. Bean 的装配与自动装配 在前一节Spring 中 Bean 的配置中的例子,我们在 application_context.xml配置文件中,我们配置了许多 bean 对象,这些对象显然都是我们自己手动装配的(wire)。 比如在使用 p namespace 之后的 bean 写法如下: <bean id="Rose" class="org.lovian.sping.bean.collections.Person" p:name="Rose"...

07 Apr 2018

[JAVA_Spring] Spring 中 Bean 的配置

I. Spring Bean 的配置形式 1. 基于 XML 文件的方式 在上一节Spring Introduction中的hello world 示例中,已经用到了xml的方式去配置一个bean <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">...

06 Apr 2018

[JAVA_Spring] Spring IOC 容器

I. Spring 中 ICO 和 DI 的概述 1. IOC IOC: Inversion of Control,反转控制, 其思想是反转资源获取的方向,传统的资源查找方式要求组件向容器发起请求查找资源,而作为回应,容器适时的返回资源; 而应用了 IOC 之后,则是容器主动地将资源推送给它所管理的组件,组件要做的仅仅是选择一种合适的方式来接受资源。这种行为也被称为查找的被动形式。 2. DI DI:...

06 Apr 2018

[JAVA_Spring] Spring 简介

I. Spring 简介 Spring 是一个java 的开源框架,用来解决企业级应用开发而创建的,目的是为了简化Java的开发。使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能。项目网站: sping.io 1.Spring 具体描述 Spring 特性: 轻量级: 基于 POJO...