最近在Spring-MVC的项目,把一些自己在项目中使用到的注解整理一下。
1、@Controller
对应表现层的Bean,也就是Struts中对应的Action;
使用这个注解之后,就是把当前Bean交给Spring容器管理,Spring会在容器里面创建一个名称为XXX(value="XXX")的Action,默认可以不填写,则Spring会在容器中创建一个当前类的名称首字母小写的Action;
2、@Component
把普通 POJO 实例化到 Spring 容器中;3、@Scope
声明范围类型,值有:singleton、prototype、request、session、global session;4、@Service
对应业务层的Bean;5、@Repository
对应数据访问层Bean;6、@Recource
JDK注解;按照name或者type方式注入对象,默认按照name方式;7、@Autowired
Spring注解;按照type方式注入对象;8、@Qualifier
Spring注解;按照name方式注入对象;
9、@Configuration
标注在类上,相当于把该类作为spring的xml配置文件中的
<beans>
,作用为:配置spring容器(应用上下文) 10、@Configuration + @Bean
标注在方法上(返回某个实例的方法),等价于spring的xml配置文件中的
<bean>
,作用为:注册bean对象 11、@Configuration + @Component
注册Bean对象12、@PropertySource
@PropertySource注解将properties配置文件中的值存储到Spring的 Environment中,例如代码:@PropertySource(value = "classpath:storage.properties")
是将项目中的storage.properties文件交给Spring的环境中去,让Spring去管理;
13、@RequestMapping
控制器指定可以处理哪些 URL 请求;14、@PathVariable、
@RequestHeader、@CookieValue、
@RequestParam、@RequestBody、
@SessionAttributes, @ModelAttribute
控制器制定可以传入的参数;
15、@PostConstruct、@PreDestroy
分别为:初始化注解(用在方法上)、销毁注解(默认单例,启动就加载,用在方法上) 参考: