spring --注解开发
- Spring4之后,使用注解,需要aop包
xmlns:context="http://www.springframework.org/schema/context"
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd
- 注解需要context约束,增加支持
<!--扫描包--> <context:component-scan base-package="com.wpz.pojo"/> <!-- 开启支持--> <context:annotation-config/>
- 属性注入
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component//说明这个类被spring接管了,注册到了容器中;相当于配置文件中<bean id='Usr' class=当前注解的类>
public class Usr {
private String name;
public String getName() {
return name;
}
@Value("WPZ")//属性值注入,相当于<property>
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "usr{" +
"name='" + name + '\'' +
'}';
}
}
- @controller web层
- @service service层
- @Repository dao层
- 自动装配
-
@Autowired @Qualifier(value = "cat1") @nullable
-
@resouce(name = "cat1")
- 作用域
@Component
@Scope(value = "singelton")
public class People {}
小结:
xml与注解
-
xml更加万能,使用于任何场合,维护简单方便
-
注解 不是自己的类使用不了,但相比更加简单
xml与注解最佳实现:
-
xml用来管理bean
-
注解用来实现属性注入
-
注意让注解生效
<!--扫描包--> <context:component-scan base-package="com.wpz.pojo"/> <!-- 开启支持--> <context:annotation-config/>
<context:annotation-config/>的作用
- 进行注解的驱动注册,从而使注解生效
- 用于激活那些已经在spring容器注册过的bean上面的注解,也就是显式的向spring注册
- 如果不扫描包,就需要手动配置bean
- 如果不加注解驱动,则注入的值为null