在前面:
本人是一名物联网工程专业大二的学生,是互联网浪潮中一朵小小的浪花,写博客即是为了记录自己的学习历程,又希望能够帮助到很多和自己一样处于起步阶段的萌新。由于水平有限,博客中难免会有一些错误,有纰漏之处恳请各位大佬不吝赐教!
博客主页:https://blog.csdn.net/qq_44895397
Spring的ioc创建对象
实现步骤:
1、创建maven文件,修改pom.xml文件:
- 添加Spring依赖
<!--spring依赖-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.5.RELEASE</version>
</dependency>
- junit依赖
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
2. 创建类(接口和实现类)
3. 创建资源文件夹,里面放入Spring的配置文件(xml文件)(beans.xml)
- 标签含义:
<font color = skyblue> spring-beans.xsd </font>约束文件
<font color = skyblue> beans </font> 根标签 里面可以有很多bean标签,spring把Java对象称为bean
- 用bean来创建对象:(声明bean,告诉spring要创建的某个类的对象)
**一个<bean>表示一个对象**
bean id :对象的自定义名称,唯一标识,你调用这个类时需要用的“名字”spring通过名称找到对象
class:类的全限定名称,只能是类,不能是接口(底层是反射机制)
<bean id="doSomeService" class="com.spring_demo.service.Impl.doSomeServiceImpl" />
spring就完成:
doSomeService doSomeService = new doSomeServiceImpl();
spring把创建好的对象放入map中,spring框架中有一个map存放对象
spring.put(id的值,创建的对象);
例如:
spring(doSomeService,new doSomeServiceImpl());
声明类的信息,这些类由Spring创建和管理在beans.xml文件中添加标签
4、使用spring容器创建的对象:
-
指定spring配置文件的路径
-
创建表示spring容器的对象, ApplicationContext
ApplicationContext 表示的就是容器,通过容器就能获取到对象
ClassPathXmlApplicationContext(config);表示从类路径中加载spring的配置文件 -
getBean(配置文件中id的值)拿到
返回的对象是Object类型,需要转换 -
就使用了
spring创建对象的时间:
spring默认在创建spring的容器时,就创建配置文件中的所有对象
默认使用无参构造方法
获取容器中对象的信息:
1) 获取容器中定义的对象的数量
2) 容器中每个定义的对象的名称
String config = "beans.xml";
ApplicationContext ac = new ClassPathXmlApplicationContext(config);
//获取容器中的对象数量
int count = ac.getBeanDefinitionCount();
//输出每个对象的名称
String[] names = ac.getBeanDefinitionNames();
spring创建非自定义的对象(已经存在的类的对象,别人写的):
比如:Date(和自定义的一样)
<bean id="nowTime" class="java.util.Date" />
junit:单元测试
一个工具类库,做测试方法使用的
单元:指的是方法,一个类中有很多方法,一个方法称为单元
使用单元测试:
1、需要加入junit依赖
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
2、创建测试类
在src/test/java目录中创建类
3、创建测试方法
1)public方法
2)没有返回值
3)方法名自定义,推荐test+测试方法名
4)方法没有参数
5)方法上面加入@Test,这样的方法是可以单独执行的
在spring的对象文件中,给Java对象的属性赋值:
di依赖注入,表示创建对象,给属性赋值
Spring框架第二谈(IOC实现,xml配置文件给属性赋值,注解实现赋值)
本站所有文章均为原创,欢迎转载,请注明文章出处:https://blog.csdn.net/qq_44895397 。