Spring框架学习笔记1:Spring简介,入门示例和Spring基础
?
?
1.Spring简介,有什么作用及其好处
Spring主要的作用是解耦,用于降低组件与组件关系,提高了程序结构的灵活性.在项目中主要使用该框架的IOC和AOP两个特性.
2.IOC概念
Inverse of Contorl 反向控制,控制反转
控制权是指对象的创建和调用的关系指定.
3.Spring入门示例 HelloWorld!
1)引入spring开发包
spring.jar,commons-logging.jar
?
2)在src下添加spring配置文件
applicationContext.xml
123
3)将程序的Bean组件在spring配置中定义,交给spring框架管理
Bean组件由spring框架负责创建和调用关系指定.
—->HelloBeanZh
MessageBean—>HelloBean—|
—->HelloBeanEn
HelloBean组件:
12345123456789123456789101112131415161718191234567进行测试:
123456789101112131415161718192021222324运行结果:
4. Spring基础
1)Spring容器实例化
a. ApplicationContext (容器对象,可使用getBean()方法)
优先于BeanFactory,功能比BeanFactory强大.
ClassPathXmlApplicationContext
FileSystemXmlApplicationContext
b.BeanFactory(提供了对象创建\关系\定位等功能)
XMLBeanFactory
2)Spring容器对对象的管理
a.如何使容器管理某个组件
11111注意:destroy-method对scope=”singleton”才有使用意义
UserBean.java:
12345678910111213141512345测试执行TestApplicationContext.java:
1234567891011121314151617181920212223242526273)DI依赖注入(是实现IOC的重要技术)
a.setter方式注入
(1)在对象中定义一个属性及setter方法,属性推荐使用接口
PersonBean.java:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118(2)在spring配置中,利用
11234567891011121314151617181920212223242526272829303132333435363738394041424344454647测试执行:
TestPersonBean.java:
12345678910111213141516171819运行结果:
b.构造方法注入
(1)在对象中定义一个带参数的构造方法
UserBean1.java:
1234567891011121314151617181920212223(2)在spring配置中,利用
1123456789101112131415123456789101112131415161718运行结果:
c.接口注入
附注:name属性和id属性的区别:name可以使用特殊字符,比如”/”。一般使用id属性