美文网首页
Spring框架

Spring框架

作者: 蘋果_283e | 来源:发表于2017-04-25 11:45 被阅读0次

Spring(程序员的春天来了)是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。中文意思为春天简单理解为程序员的春天来了

体系结构

1、Spring core 是spring框架的核心,提供了IOC和依赖注入特性

2、Spring Context 提供了一种框架风格的方式来访问对象,继承了beans包的功能,同时增加了国际化、事件传播、资源装载、以及透明创建上下文

3、Spring AOP 通过配置管理,直接将面向方面编程集成到了框架之中。

4、Spring DAO 提供了JDBC的抽象层。可以消除冗长的JDBC编码和数据库厂商特有的错误代码

控制反转(IOC)

控制反转(IOC--Inversion of control)所谓控制反转就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转,

依赖注入(DI)

概念:di(Dependency injection )所谓依赖注入就是指:在运行期,由外部容器动态地将依赖对象注入到另一个对象的组件中。

注入方式:

1、set 注入(第1种  set注入)

<bean id="he" class="entity.Hello">

<property name="hello" value="我爱北京!!!"/></bean>

2、构造方法注入(第2种  构造方法注入)

<bean id="stu" class="entity.Student">

<constructor-arg index="0" value="张三丰"/>

<constructor-arg index="1" value="18"/>

<constructor-arg name="score" value="98"/></bean>

3、参考注入(接口注入)

<bean id="boy1" class="entity.Boy"></bean>

<bean id="girl" class="entity.Girl">

<property name="boy" ref="boy1"/></bean>

数组 set list map注入

1 、public class Teacher {

private String[]info;//数组

private List list;//List集合

private Set set;//Set集合

private Map map;//Map键值对

//所以对象都有set get方法。。。。

2、<bean id="tea" class="entity.Teacher">

<property name="info"><!-- 注入数组 -->

<array><value>教授</value><value>副教授</value><value>高工</value></array>

</property>

<property name="list"><!-- 注入List集合 -->

<list><value>博士</value><value>硕士</value><value>学士</value></list>

</property>

<property name="set"><!-- 注入Set集合 -->

<set><value>北京</value><value>上海</value><value>南京</value></set>

</property>

<property name="map"><!-- 注入Map集合 -->

<map><entry key="姓名" value="李小龙"></entry><entry key="工资" value="8888"></entry></map>

</property>

</bean>

3

ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");

Teacher tea = ac.getBean("tea",Teacher.class);

String[] info = tea.getInfo();//取出数组

for(String ss:info){

System.out.println(ss);}

List list = tea.getList();//取出List集合

for(int i=0;i<list.size();i++){

System.out.println(list.get(i));}

Set set = tea.getSet();//取出Set集合

Iterator iterator = set.iterator();

while(iterator.hasNext()){

System.out.println(iterator.next());

}

Map map = tea.getMap();//取出Map中的键和值

Iterator iterator2 = map.keySet().iterator();

while(iterator2.hasNext()){

Object next = iterator2.next();//获取键

System.out.println(next+":"+map.get(next));//get获取值

}

System.out.println(map);

相关文章

网友评论

      本文标题:Spring框架

      本文链接:https://www.haomeiwen.com/subject/zrnmzttx.html