Spring注解初识
1.注解小入门
MVC模式中把数据和业务逻辑分开处理,大大方便了开发人员分工协作,也提高了开发效率。引入@xxx注解方式给类中的依赖属性赋值免去了java文件和.xml文件之间不断切换的操作
@Controller
用来表示一个web控制层bean,如SpringMvc中标识这是一个控制器
@Service
用来表示一个业务层的bean,如Spring中通过它注入依赖
@Repository
用来表示一个持久层bean,即数据访问层dao层
@Component
当一个类不合适用以上的注解定义时用这个组件修饰。
需要注意的是@Controller,@Service,@Repository都有带@Component父注解,说明它们除了基本组件的属性外还有其他的的场景应用,即如果不用SpringMVC其实它们就是一个普通的组件,但普通组件建议最好还是用@Component修饰。
2.Spring怎么识别?
为了让Spring自动扫描注册这些组件,需要在配置文件中加上扫描的配置,如扫描com.oracle.ssm.service包下的注解。在配置文件中的配置Spring或者SpringMvc注解扫描器都是使用标签:<context:component-scan base-package="com.oracle.ssm.service" />
a.扫描配置默认use-default-filters="true",默认扫描@Component注解及子注解。
b.使用<context:include-filter>可以配置扫描那些注解,<context:exclude-filter>不扫描那些注解
c.列如:在ssm项目中,Spring配置的扫描器只扫描Service层,SpringMvc中的扫描器扫描Controller层。
d.关于type的类型
e.<context:component-scan>配置可以有多个。