常用工具 jar 说明
提供AOP(面向切面编程)实现:spring -aop
spring提供对AspectJ框架的整合:spring-aspects
提供 IoC(控制反转)的基础实现:spring-beans
spring提供在 IoC 基础功能上的扩展服务:spring-context
对spring-context的扩展支持:spring-context-support
spring核心组件:spring-core
spring表达式语言:spring-expression
spring提供的对JDBC支持包:spring-jdbc
整合第三方的ORM框架:spring-orm
对单元测试和集成测试的简单封装:spring-test
对事务管理的封装:spring-tx
springMVC支持web端应用部署架构:spring-web
REST Web服务和Web应用的视图控制器的实现:spring-webmvc
普通构造注入:
1、创建spring的xml配置未见applictionContext.xml
2、在spring的配置文件中声明对象
(将对象信息告诉spring容器,例如id和class,spring容器根据class,通过反射(默认使用无参构造方法)就可以创建一个名为user1的对象)
id和name的区别
实际开发过程中我们可以忽略id和name的区别。可以混合使用。通过getBean()方法都可以获取,这个是个重载的方法。
id="user1,user2,user3" 表示bean有一个名字,这个名字就是user1,user2,user3(在同一个配置文件中ID不要出现重复的)
name="user1,user2,user3" 表示bean有多个名字,多个名字分别是user1、user2以及user3
3、初始化容器:
ApplicationContext ac = new ClassPathXmlApplicationContext(applicationContext.xml);
4、调用被spring注入的对象
通过调用容器中的getBean方法获取。ac.getBean("对象名",对象类型);
通过类型直接获取一个Bean的实例。ac.getBean(对象类型);有潜在隐患,如果有多个相同对象类型,会报错。
注意:普通构造注入需要配合构造方法(被引用的对象的构造方法)才能成功。