spring_02注解 和插件配置以及与juint整合
使用注解配置spring
-
导包
(4+2+spring-aop)
在新版本中需要srping-aop包,注解才能够使用 -
为主配置文件引入context命名空间(约束)
xmlns:context="http://www.springframework.org/schema/context"
-
开启使用注解代理配置文件
<!-- 指定扫描org.spring包下的所有类中的注解 注意:会扫描org.spring包下的所有子孙包和文件--> <context:component-scan base-package="org.spring"></context:component-scan> -
在类中使用注解完成配置
例:
import org.springframework.stereotype.Component;
//
@Component("user")
public class User {
}
-
将对象注册到容器
@Component
@Service //service层
@Controller //web层
@Repository //dao层
说明:这4个注解的作用完全相同 名称不同用于区别每一层的对象
-
修改对象的作用范围
@Scope(scopeName="protorype")
-
值类型注入
@Value("Tom")
@Value("Tom")
private String name;
//通过反射的Field赋值,比较直观,但是破坏了封装性或
@Value("Tom")
public void setName(String name) {
this.name = name;
}
//通过set方法赋值,推荐使用 -
引用类型注入
(1)
@Autowired //自动装配
private Car car;
需要:
@Component
public class Car{ }
//问题:如果匹配多个类型一致的对象,将无法选择具体注入哪一个对象, so:(2)
@Autowired
@Qualifier("car2")
private Car car;(3)
@Resource(name="car2") //手动注入,指定注入那个名称的注入
private Car car; -
初始化|销毁方法
@PostConstruct //在对象创建后调用 init-method
public void init(){
System.out.println("初始化方法");
}
@PreDestroy //在销毁之前调用 destroy-method
public void destory(){
System.out.println("销毁方法");
}
spring插件
-
安装springsource-tool-suite(sts)插件
-
使用spring安装好插件的Eclipse
spring与juint测试整合
- 目的:为了简化测试
-
导包
(4+2)+ srping-aop + spring-test
-
使用:
//帮我们创建容器
@RunWith(SpringJUnit4ClassRunner.class)
//指定创建容器时使用哪个配置文件
@ContextConfiguration("classpath:applicationContext.xml")
public class TestUser {
//将名为user的对象注入到变量u中
@Resource(name="user")
private User u;@Test
public void Test(){
System.out.println(u);
}}

浙公网安备 33010602011771号