Spring 容器
目录
- 1、框架
- 1.1、框架的作用
- 1.2、核心库--bean
- 2、spring 项目的搭建
- 3、bean 的注册和注入
- 3.1、bean 的注册
- 3.2、bean 的注入
1、框架
1.1、框架的作用
我们使用Java作为开发语言时,几乎都需要使用ee框架(ssm),其中的 ssm 指的是 spring(boot):基本的脚手架,springmvc:专门做web开发,mybatis:数据库框架。广义的说,框架满足某些特定功能(比较多且强大),我们是在这些框架封装的代码设计上进行开发。使用框架可以提高开发效率,让我们能更好的管理项目。
1.2、核心库–bean
和集合框架中的容器类似,bean容器的主要作用是存储和使用bean对象:
- 注册:创建一个bean对象,存储到容器中。 如:map.put(“id”, new Person())
- 注入:从容器中取一个对象,注入到某个地方(某个对象的属性,方法参数)。如 Person p = map.get(“id”); p.think();
2、spring 项目的搭建
- 搭建 Maven 项目
- 在 pom.xml 文件中添加 spring-beans、spring-context 两个依赖包
- 如果引入失败(依赖项是红色的),则检查idea中 maven配置是否正确
- 修改完 pom.xml 后,一定要刷新 maven 面板,且检查 maven 面板中依赖项是否成功引入。
3、bean 的注册和注入
3.1、bean 的注册
- 创建容器,填写需要被扫描的包路径,在包及子包路径下,如果存在spring框架注解的类,就会自动注册到容器中
- 类注解:在指定的包下创建类,并将其类注解,那么该类会自动注册到容器中,注册的数据是键值对,键:类名首字母小写,值:bean对象
- @Bean方法注解:注册 bean,除了上述的类注解,还有方法注解 @Bean,注册的数据是键值对,键:方法名,值:方法返回值(注入多个对象的好处是可以根据需要在 Person 中注入指定的一个)
引申:类注解是注册一个单例的 Bean 对象,而 @Bean方法注解,可以注册多个 Bean 对象
总结:需要满足以下两个条件才可以自动注册:
1、在指定的包路径下
2、有 spring 框架注解
由此可得,bean 注册省略了 new 对象和容器.add/put两个步骤
3.2、bean 的注入
bean 的注入是从容器中取一个对象,注入到某个地方,这里的示例是注入到某个对象的属性中。
- 容器中注册两个类:Person、Mobile
- 在 Person 类中增加 Moblie 属性,且这里的属性是容器中的 Mobile 类
总结:在代码使用上带来了改变,以前是一片代码写完,现在是看起来代码没关系,但是spring已经内部建立了对象和对象间的关系(依赖关系:X x = new X(); m.x = x,此时 x 和 m 存在一定的依赖关系,即 m 依赖 x ),更多的是注解的使用。