一、本课目标
- 掌握Spring设值注入
二、Hello,Spring!
需求分析:如何使用Spring实现控制反转?
- 编写HelloSpring类,输出“Hello,Spring!”
- 字符串“Spring”通过Spring注入到HelloSpring类中
步骤:
1、添加Spring到项目中
2、编写配置文件
3、编写代码获取HelloSpring实例
2.1添加Spring到项目中
1、引进jar包:(所有的Spring的内容都可以从Spring官网上下载:repo.spring.io)访问官网——搜索(spring-framework-3.2.13)——我们需要的是: 火狐截图_2018-08-28T02-13-01.855Z.png解压之后有三个文件夹: image.png
第一个文件夹是spring的一些api和一些相关内容的介绍,第二个文件夹是它的所有的jar包,第三个文件夹是它的配置文件的元素所以来的schema元素。
项目需要引进的所有的jar包都已经归类整理在E盘。到时候后直接用就好。
2、编写HelloSpring类
代码如下:
package cn.springdemo;
public class HelloSpring {
// 定义变量who,它的值通过spring框架注入
private String who;
/**
* 定义打印方法,输出一句完整的问候
*/
public void print() {
System.out.println("Hello," + this.getWho() + "!");
}
public String getWho() {
return who;
}
public void setmmp(String who) {
this.who = who;
}
}
3、编写配置文件
配置文件的头信息去哪里找?
在解压下载下来的spring包中——docs——spring-framework-reference——htmlsingle——用谷歌打开index.html——使用ctrl+f查找“spring-beans”,复制找到的xml文件的头信息即可。
beans标签里面可以写bean标签,bean标签其实就是管理我们的类的标签,里面有两个属性:id和class。class属性是指我们的这个bean要管理的类的完全限定名,id是这个类的别名,其实就相当于new了一个对象出来。bean其实就是为了生成一个对象实例。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- bean元素声明spring创建的对象实例,id属性指定对象的唯一标识符,方便程序的使用
class属性可以指定被声明的实例对应的类
-->
<bean id="helloSpring" class="cn.springdemo.HelloSpring">
<!-- 指定被赋值的属性名 -->
<!-- 这个name属性跟这个类的set方法后面的名字是对应的
比如说设置who的set方法叫做setThisWho,则这个地方
name属性的值应该写为ThisWho,
并不是跟成员变量的名字一致
-->
<property name="mmp">
<!-- 赋值的内容 -->
<value>mmp</value>
</property>
</bean>
</beans>
4、单元测试
测试类代码:
package test;
import static org.junit.Assert.*;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import cn.springdemo.HelloSpring;
public class HelloSpringTest {
@Test
public void test() {
// 读取配置文件
ApplicationContext context =
new ClassPathXmlApplicationContext("ApplicationContext.xml");
HelloSpring helloSpring = (HelloSpring) context.getBean("helloSpring");
helloSpring.print();
}
}
运行结果:
image.png
注:
1、读取配置文件还可以用ApplicationContext 的下面这个实现类:FileSystemXmlApplicationContext
。
2、除了使用ApplicationContext 及其实现类之外,还可以用BeanFactory
接口及其实现类来对Bean进行管理。
网友评论