Spring中定义了一系列的注解,常用的注解如下所示:
@Component:可以使用此注解描述Spring中的Bean,但它只是一个泛化的概念,仅仅表现一个组件(Bean),并且可以作用在任何层次。
@Repository:
用于将数据访问层( DAO层)的类标识为Spring中的Bean,其功能与@Component相同。
@Service:
通常作用在业务层( Service层)用于将业务层的类标识为Spring中的Bean
其功能与@Component相同。
@Controller:
通常作用在控制层(如SpringMVC的Controler )用于将控制层的类表示为为Spring中的Bean,其功能与@Component相同。
@Autowired:
用于对Bean的属性变量、属性的setter方法 及构造方法进行标注,配合均应的注解处理器完成Bean的自动配置工作。默认按照Bean的类型进行装配。
@Resource:
其作用与@Autowired一样。 其区别在于@Autowired默认按照Bean类型装配,而@Resource默认按照Bean实例名称进行装配。@Resource中有两个实例类型。如和type。Spring 将name属性解析为Bean实例名称,type 属性解析为Bean实例类型,如果指定name属性,则接实例名称进行装配;如果指定type属性,则按Bean类型进行装配;如果都不指定,则先按Bean实例名称装配,如果不能匹配,再按照Bean类型进行装配:如无法匹配,则抛出NoSuchBeanDefinitionException异常。
**@RequestMaping:**标记于一个被@Controller标注的类上 ,标记于被@Controller标注类里面的方法上面
在浏览器访问该方法就得域名+项目名+hello(@RequestMaping("/hello"))
@Controller用来注解这个bean(类)是MVC模型中的一个控制层,使分发处理器识别到该类,该类会被spring的auto-scan(<context:component-scan base-package=“Bean包所在的位置”
/>)扫到纳入管理。
@Resource:往bean中注入userService,可以调用userService中的save()方法。