【Spring】基于注解的装配方式
【Spring】基于注解的装配方式_lucashu的博客-CSDN博客
Spring注解@Component、@Repository、@Service、@Controller @Resource、@Autowired、@Qualifier_彭先森的博客-CSDN博客
-
@Service
-
用于标注业务层组件(我们通常定义的service层就用这个)
-
@Controller
-
用于标注控制层组件(如struts中的action)
-
@Repository
-
用于标注数据访问组件,即DAO组件
-
@Component
-
泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
这几个注解是当你需要定义某个类为一个bean,则在这个类的类名前一行使用@Service("XXX"),就相当于讲这个类定义为一个bean,bean名称为XXX; 这几个是基于类的,我们可以定义名称,也可以不定义,不定义会默认以类名为bean的名称(类首字母小写)。
当需要在某个类中定义一个属性,并且该属性是一个已存在的bean,要为该属性赋值我们就用这三个。@Resource、@Autowired、@Qualifier
@Repository没有指定bean名称,此时通过属性名去找到底注入哪个bean。
开启注解
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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 https://www.springframework.org/schema/context/spring-context.xsd">
<!-- 开启注解 配置扫描路径 -->
<context:component-scan base-package="com.lucas"/>
<!-- 如果有多个路径 ,号隔开
<context:component-scan base-package="com.lucas.service,com.lucas.dao"/>-->
</beans>
扫描二维码,在手机上阅读!
评论