打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Spring1——初识Spring、IOC控制反转(DI:依赖注入)
初识Spring
1.搭建spring环境
下载jar包
https://maven.springframework.org/release/org/springframework/spring/
spring-framework-4.3.9.RELEASE-dist.zip
开发spring至少需要使用的jar(5个加1个):
spring-aop.jar     开发AOP特性时需要的JAR
spring-beans.jar    处理Bean的JAR
spring-context.jar    处理spring上下文的jar
spring-core.jar    spring核心jar
spring-expression.jar    spring表达式
三方提供的日志jar
commons-logging.jar     日志
 
2.编写配置文件
为了编写时有提示、自动生成一些配置信息。
方式一:增加sts插件
可给eclipse增加支持spring插件:spring tool suite(https://spring.io/tools/sts/all) springsource-tool-suite-3.9.11.RELEASE-e4.12.0-updatesite.zip。
方式二:下载sts工具
新建:applicationContext.xml
 
3.开发spring程序(IOC)
//Spring上下文对象ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");//执行从spring ioc容器中拿到id为student的对象Student student = (Student) context.getBean("student");
 
 
 
IOC控制反转(DI:依赖注入)
SpringIOC发展史:
1. Student student=new Student();
  student.setxxx(x);
2.简单工厂
3.IOC(超级工厂)
 
IOC也可以成为DI(依赖注入)。
总结:ioc/di,无论要什么对象,都可以直接从spring ioc中获取,不需要自己操作。
 
IOC容器的赋值:如果是简单类型(8个基本+String),用value赋值;
                          如果是对象类型,用ref赋值,ref=需要引用的id,实现了对象与对象之间的依赖关系。
 
依赖注入的三种方式:
1.set注入
赋值,默认使用的是set方法。
依赖注入底层是通过反射实现的。
<property name="stuNo" value="1"></property>
2.构造器注入:通过构造方法赋值
<constructor-arg value="21" index="1" type="int" name="age"></constructor-arg>
3.p命名空间注入
(1)引入p命名空间:xmlns:p="http://www.springframework.org/schema/p"
(2)<bean id="course" class="org.ghl.entity.Course" p:courseName="jacv" p:courseHour="344" p:teacher-ref="teacher">
注意:简单类型 p:属性名=“属性值”
     引用类型 p:属性名-ref=“引用的id”
     多个p赋值之间要有空格。
 
注入各种数据集合类型:
list:
<property name="list">
<list>
<value>足球</value>
<value>篮球</value>
<value>乒乓球</value>
</list>
</property>
array:
<array>
<value>足球a</value>
<value>篮球a</value>
<value>乒乓球a</value>
</array>
set:
<set>
<value>足球s</value>
<value>篮球s</value>
<value>乒乓球s</value>
</set>
map:
<map>
<entry>
<key>
<value>foot</value>
</key>
<value>足球m</value>
</entry>
</map>
properties:
<props>
<prop key="footp">足球p</prop>
<prop key="baskp">篮球p</prop>
<prop key="ppp">乒乓球p</prop>
</props>
 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
spring学习总结
Spring学习笔记2_IOC与DI
Spring + Atomikos 分布式事务实现方式
浅析Spring IOC、依赖注入(DI)和依赖查找(DL)
面试问烂的 Spring IOC 过程
Spring--Core 模块
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服