创建对象
知识点1: spring针对bean管理中的创建对象提供了以下四个注解。
@Component @Service @Controller @Repository
功能一样,只是约定大于配置,所以一般都有自己的位置专门使用。
知识点2:创建对象步骤
- 引入依赖。
- 开启组件扫描。
告诉Spring容器要扫描哪个包中的类
具体步骤:
- 在
bean.xml
引入名称空间- 使用
context
标签引入包
- 创建类,在目标类or方法上面注解(4选1)
代码
- bean.xml
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!--开启组件扫描-->
<context:component-scan base-package="com.guodaxia.spring5"></context:component-scan>
</beans>
- 服务层类
package com.guodaxia.spring5.service;
import org.springframework.stereotype.Component;
@Component
public class UserService {
public void test(){
System.out.println("service ing,,,,,");
}
}
- 测试层
package com.guodaxia.spring5.testdemo;
import com.guodaxia.spring5.service.UserService;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestSpring5 {
@Test
public void testService(){
ApplicationContext context =
new ClassPathXmlApplicationContext("bean.xml");
UserService userService = context.getBean("userService", UserService.class);
System.out.println(userService);
userService.test();
}
}
总结
- 首先通过名称空间p和bean管理下的context标签引入基础包;
- 然后在服务层的类上使用注解;
- 最后测试注解是否成功。
- 在使用
getBean(s,class)
方法时,s是被注解类名首字母小写的字段,class是被注解类驱动。
附件
比任何人都要努力