Spring
1. Spring相关框架
Spring分为七层,分别为Core层、AOP层、Context层、DAO层、ORM层、WEB层、WEB MVC层.
2. IoC依赖注入
控制反转是从调用者角度,即调用者无需主动获取依赖对象,而是通过被动接受Spring容器为调用者的成员变量赋值,通过set方法。因此,调用者获取依赖对象的方式由原来的主动获取变成被动接受,因此称为控制反转。
从Spring容器角度,负责将依赖对象赋值给调用者的成员变量,相当于为调用者注入其成员变量的值,因此也称为依赖注入。
2.1 bean对象
Spring核心容器的管理对象是Bean,即容器中的对象。Bean可以理解为所有的Java对象。
在Spring容器中,通过xml或者注解的方式来对Bean进行管理。
2.1.1 XML文件管理
<bean id="id" class="...." >
<property name="name" value="..." />
</bean>
上述代码即为指定一个bean,同时调用它的setName方法,使得name=value。
如果一个bean中含有对象属性,则需要同时注册两个bean。利用ref=”id”来进行映射。
2.1.2 利用注解来对Bean进行配置
利用注解,首先需要在xml文件中打开<context:component-scan basepackage="包名" />
,然后在相关组件类头部加上@Component(name=""(可忽略))
注解即可声明一个Bean。
@Scope
注解可以指定Bean的作用域,可以设值为singleton或者prototype。
@Resource(name="")
注解可以配置依赖,它与xml文件中的ref功能一样。
@PostConstruct
注解指定init-method
,而@PreDestroy
注解指定destroy-method
。
@DependsOn({"axe"})
注解可以强制初始化其他Bean,而@Lazy
可以指定该Bean是否取消延迟初始化。
@AutoWired
可以指定自动匹配,默认采用byType,可以修饰多个参数的普通方法或者构造方法和实例变量、数组等。
2.2
3. AOP面向切面编程
Spring MVC
面向切面编程概念
相关注解