Spring注解开发

Spring注解开发

首先进入spring官方core链接并ctrl+f,
输入xmlns:context复制约束到
bean.xml,并添加解析属性




   //告知扫描此包下的名称空间约束
   

当完成了以上这一步骤之后,
使用@Component注解配置管理的资源
Service.java

@Component("accountService")
public class AccountServiceImpl implements IAccountService {
private IAccountDao accountDao;
public void setAccountDao(IAccountDao accountDao) {
this.accountDao = accountDao;
}
}

就能将把此类加入IOC容器中

@Component//也可以不加任何参数。默认值则为类名小写

@Controller @Service @Repository
他们三个注解都是针对一个的衍生注解,他们的作用及属性都是一模一样的。
他们只不过是提供了更加明确的语义化。

@Controller: 一般用于表现层的注解。
@Service: 一般用于业务层的注解。
@Repository: 一般用于持久层的注解。
细节:如果注解中有且只有一个属性要赋值时,且名称是 value, value 在赋值是可以不写。

依赖注入的几个注解

@Autowired
作用:
自动按照类型注入。当使用注解注入属性时,
set方法可以省略。它只能注入其他 bean 类型。当有多个类型匹配时,
使用要注入的对象变量名称作为 beanid,在 spring 容器查找(包括其继承的接口类型),找到了也可以注入成功。找不到就报错

@Qualifier
作用:
在自动按照类型注入的基础之上,再按照 Bean 的 id 注入。它在给字段注入时不能独立使用,必须和@Autowire 一起使用;但是给方法参数注入时,可以独立使用。
属性:
value:指定 bean 的 id。

@Resource(无需依赖@Autowired)
作用:
直接按照 Bean 的 id 注入。它也只能注入其他 bean 类型。
属性:
name:指定 bean 的 id。

@Value
作用:
注入基本数据类型和 String 类型数据的
属性:
value:用于指定值

你可能感兴趣的:(Spring注解开发)