一、原始Spring方式:
(1). BeanFactory:
(1)、配置资源文件件名为applicationContext.xml
(2)、引用约束声明
(3)、通过配置告诉Spring的Ioc容器,需要帮我管理哪一个类的对象;
①没有规定,一般为类名首字母小写。
(4)、<bean id='①' class="需要管理类的全限定名">
<property name="属性名" vlaue="值"/> ------>给类中属性设置值 但必须有set方法;
</bean>
(5)、从classPath路径去寻找配置文件,创建资源对象;
Resource resource = new ClassPathResource("applicationContext.xml");
(6)、根据资源对象创建SpringIoc容器对象。
BeanFactory factory = new XMLBeanFactory(resource);
(7)、从ioc容器中获取指定名称(① id属性值)的对象。
对象名=(对象类型 需要强转一下) factory.getBean("① id属性值")
注意:
getBean 三种签名:就是获取Bean
第一种: 通过ID属性值获取。
第二种: 通过按照指定的类型去寻找对象。
<T> T getBean( calss<T> requiredType)---->必须保证,Bean是唯一的。
----类名.class-----
第三种: 通过ID名称和Bean类型去寻找。
<T> T getBean( id名称,calss<T> requiredType)---》推荐
(2). 使用 APPlicationContext
(1)、配置资源文件件名为applicationContext.xml
(2)、引用约束声明
(3)、通过配置告诉Spring的Ioc容器,需要帮我管理哪一个类的对象;
(4)、读取核心配置文件,获取 Bean 工厂对象
APPlicationContext context = new ClassPathXmlApplicationContext("配置文件名");
---继承了BeanFactry---
(5)、通过Bean工厂获取Bean
context.getBean("① id属性值")
二、在SpringBoot项目中
(1).通过注入方式:
(1).注入获取 Bean 工厂对象
@Autowird
private ApplicationContext context;
(2)通过Ioc注解名获取相应Bean
例如:获取Controller层对象
context.getBeansWithAnnotation(Controller.class);
(2).通过RequestMappingHandlerMapping 对象获取(SpringMVC中)
@Autowird
private RequestMappingHandlerMapping requestMappingHandlerMapping;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/188570.html