Spring学习笔记(一)
来源:互联网 发布:黑龙江网络作家协会 编辑:程序博客网 时间:2024/06/08 00:55
由于公司项目的原因,开始接触到sprin,从一脸懵逼开始,于是一边请教同学,一边买了本Spring实战开始看起来,现在简单记录下,加深记忆.
在我目前学习过程而言,对spring的认识还在于通过xml配置文件的依赖注入实现对象之间的松耦合。依赖注入主要有三种形式:构造器注入,setter注入和p注入,其中p注入是setter注入的简化形式。
举个栗子
有如下代码块:
package mawu.com;class Performer{ String song; Instrument ins; Performer(){} Performer(String song, Instrument ins){ this.song = song; this.ins = ins; } public String getSong(){ return this.song; } public Instrument getInstrument(){ return this.ins; } public void setSong(String song){ this.song = song; } public void setInstrument(Instrument ins){ this.ins = ins; } //其他method ...}
package mawu.com;public interface Instruments{ public void perform();}
package mawu.com.Instruments;public class Guitar implements Instrument{ @overwrite public void perform(){ System.out.println("guitar, guitar, guitar"); }}
对于以上一个类的初始化,采用依赖注入的方式下,xml文件有三种配置方式。
对于spring的XML文件而言,每个对象都是配置在spring容器的bean中的。
既然已经声明了Performer类,则我们可以配置我们第一个Performer对象,假设叫Jack。
1、 构造器注入:
1)默认构造器
<bean id = "Jack" class = "mawu.com.Performer" />// 相当于 Jack = new mawu.com.Performer();
2)指定构造器
<bean id = "Jack" class = mawu.com.Performer> <constructor-arg song = "see you again" /> <constructor-arg ref = "guitar" /></bean>----------<bean id = "guitar" class = "mawu.com.Instruments.Guitar" />// //相当于Jack = new mawu.com.Performer("see you again",guitar);
2、setter注入
对于类Performer而言,每个成员变量还有自己的set方法,除了通过构造器构造外,也可以通过set方法对每个成员变量注入。通过setter注入的bean如下所示:
<bean id = "Jack", class= mawu.com.Performer> <property name = "song" value = "see you again"/> <property name = "ins" ref = "guitar" /> <!--注入内部bean--> <!-- <property name = "ins"> <bean class = "mawu.com.Instruments.Guitar" / --></bean>----------<bean id = "guitar" class = "mawu.com.Instruments.Guitar" />
通过setter注入,spring会自动去找对应对象的setter方法,完成成员变量的初始化。
3、p注入
property注入写起来比较麻烦,简化形式即为p注入。要想使用p注入,在spring 的XML配置文件中需要加一段p的声明。在完成声明的前提下,p注入的写法如下:
<bean id = "Jack", class= mawu.com.Performer p:song = "see you again" p:ins-ref = "guitar" />----------<bean id = "guitar" class = "mawu.com.Instruments.Guitar" />
小结
spring有三种配置方式:构造器注入,关键词位constructor-arg;setter注入,关键词位property;p注入关键词为p
0 0
- Spring学习笔记(一)
- Spring 学习笔记(一)
- spring学习笔记(一)
- Spring学习笔记(一)
- Spring学习笔记(一)
- spring学习笔记(一)
- Spring 学习笔记(一)
- spring学习笔记(一)
- Spring 学习笔记(一)
- Spring学习笔记(一)
- Spring学习笔记(一)
- spring学习笔记(一)
- Spring学习笔记(一)
- spring学习笔记(一)
- Spring学习笔记(一)
- Spring 学习笔记(一)
- Spring学习笔记(一)
- Spring 学习笔记(一)
- Hadoop启动操作过程及常见错误
- 【Leetcode】221. Maximal Square
- jsp中select,radio,checkbox传参到后台
- 开启nginx和php-fpm的status状态监控
- gulp less编译css压缩和js压缩别名输出
- Spring学习笔记(一)
- sunday算法
- MySQL启程学习回忆录1
- UIFramework之对象池的使用
- 新手求助,C#窗口使用timer配合progressBar做循环进度条,为什么进度条不动
- Windows高效通信模型之IOCP
- bootstrap 模态框 删除确认
- RBF神经网络
- Sublime Text3 配置