没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
IOC容器
1.基于xml配置ioc
构造方法
<!-- 可以使用无参数构造函数实例化的组件,进行ioc配置-->
<bean id="happyComponent" class="com.itbignyi.ioc_01.HappyComponent"></bean>
工程模式
<!-- 非静态工程如何进行ioc配置-->
<bean id="defaultServiceLocator" class="com.itbignyi.ioc_01.DefaultServiceLocator"></bean>
<bean id="clientService2" factory-bean="defaultServiceLocator" factory-method="creatClientServiceInstance"></bean>
<!-- 静态工场类,声明工厂方法进行ioc的配置-->
<bean id="clientService" class="com.itbignyi.ioc_01.ClientServiceImpl" factory-method="createInstance"></bean>
FactoryBean标准化工厂
<!-- id getObject方法返回的对象标识-->
<bean id="javaBean" class="com.itbignyi.ioc_05.JavaBeanFactoryBean"></bean>
public class JavaBeanFactoryBean implements
FactoryBean<JavaBean> {
@Override
public JavaBean getObject() throws Exception {
JavaBean javaBean = new JavaBean();
return javaBean;
}
@Override
public Class<?> getObjectType() {
return JavaBean.class;
}
}
2. 基于xml配置DI
<!-- 1.0 单个构造参数注入-->
<bean id="userDao" class="com.itbignyi.ioc_02.UserDao"></bean>
<bean id="userService" class="com.itbignyi.ioc_02.UserService">
<constructor-arg ref="userDao"></constructor-arg>
</bean>
<!-- 多个构造参数注入-->
<bean id="userService2" class="com.itbignyi.ioc_02.UserService">
<constructor-arg name="age" value="89"></constructor-arg>
<constructor-arg name="name" value="张二河"></constructor-arg>
<constructor-arg name="userDao" ref="userDao"></constructor-arg>
</bean>
<!-- 触发setter方法注入-->
<bean id="movieFinder" class="com.itbignyi.ioc_02.MovieFinder"></bean>
<bean id="simpleMovieLister" class="com.itbignyi.ioc_02.SimpleMovieLister">
<property name="movieName" value="张有志"></property>
<property name="movieFinder" ref="movieFinder"></property>
</bean>
3. 基于xml的ioc容器创建
// 直接创建容器并配置文件
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring-03.xml");
4.获取ioc容器中的bean对象
/ 创建ioc容器
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring-03.xml");
1. 直接根据beanId即可------不推荐
HappyComponent happyComponent = (HappyComponent) applicationContext.getBean("happyComponent");
2.根据beanID同时指定bean 的类型--class
HappyComponent happyComponent1 = applicationContext.getBean("happyComponent", HappyComponent.class);
3.直接根据类型获取
HappyComponent happyComponent2 = applicationContext.getBean(HappyComponent.class);
5.扩展组件周期方法
周期方法的配置
<bean id="javaBean" class="com.itbignyi.ioc_04.JavaBean" init-method="init" destroy-method="clean"></bean>
public void test_04() {
// 1.创建ioc容器,就会进行组件对象的实例化
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring-04.xml");
// 2.正常结束ioc容器
applicationContext.close();
}
扩展作用域配置
<!-- 声明一个组件,默认单例模式-->
<bean id="javaBean2" class="com.itbignyi.ioc_04.JavaBean2" scope="singleton"></bean>
<!-- 声明一个组件,设置为多例模式-->
<bean id="javaBean2" class="com.itbignyi.ioc_04.JavaBean2" scope="prototype"></bean>
分支主题 6
资源评论
冰逸.itbignyi
- 粉丝: 61
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 20240420-扬州高中小学部风雨操场转换层条件图r.dwg
- 小猫咪邮件在线发送系统源码v1.1,支持添加附件
- 永磁电机铜耗估算表-Excel-v1.0
- 参考资料-人工智能对劳动力市场的影响机制研究.pdf
- 协同供应链集成产品介绍V71sp1.rar
- 上市公司-人工智能的采纳程度面板数据(2003-2021年).xlsx
- 参考资料-人工智能技术应用对就业的影响及作用机制研究-来自制造业企业的微观证据.pdf
- 第5章spring-mvc请求映射处理
- 2023-04-06-项目笔记 - 第一百十六阶段 - 4.4.2.114全局变量的作用域-114 -2024.04.27
- 协同供应链集成产品介绍V70.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功