Spring全部注解 Spring中的注解主要分为两类**类级别的注解**如Component、Repository、Controller、Service以及JavaEE6的ManagedBean和Named注解都是添加在类上面的类级别注解。类内部的注解如Bean、Autowire、Value、Resource以及EJB和WebService相关的注解等都是添加在类内部的字段或者方法上的类内部注解。### 具体的来说又有以下几种类型的注解方式1.声明bean的注解Component 组件通用的注解方式Service 在业务逻辑层使用service层Repository 在数据访问层使用dao层Controller 在表现层使用控制器的声明C2.注入bean的注解Autowired由Spring提供Inject由JSR-330提供Resource由JSR-250提供都可以注解在set方法和属性上推荐注解在属性上一目了然少写代码。3.java配置类相关注解Configuration 声明当前类为配置类相当于xml形式的Spring配置类上Bean 注解在方法上声明当前方法的返回值为一个bean替代xml中的方式方法上Configuration 声明当前类为配置类其中内部组合了Component注解表明这个类是一个bean类上ComponentScan 用于对Component进行扫描相当于xml中的类上WishlyConfiguration 为Configuration与ComponentScan的组合注解可以替代这两个注解4.切面AOP相关注解Spring支持AspectJ的注解式切面编程。Aspect 声明一个切面类上使用After、Before、Around定义建言advice可直接将拦截规则切点作为参数。After 在方法执行之后执行方法上 Before 在方法执行之前执行方法上 Around 在方法执行之前与之后执行方法上PointCut 声明切点在java配置类中使用EnableAspectJAutoProxy注解开启Spring对AspectJ代理的支持类上5.Bean的属性支持Scope 设置Spring容器如何新建Bean实例方法上得有Bean其设置类型包括· Singleton 单例一个Spring容器中只有一个bean实例默认模式,· Protetype 每次调用新建一个bean,· Request web项目中给每个http request新建一个bean,· Session web项目中给每个http session新建一个bean,· GlobalSession给每一个 global http session新建一个Bean实例StepScope 在Spring Batch中还有涉及PostConstruct 由JSR-250提供在构造函数执行完之后执行等价于xml配置文件中bean的initMethodPreDestory 由JSR-250提供在Bean销毁之前执行等价于xml配置文件中bean的destroyMethod### Conditional是Spring4新提供的注解它的作用是按照一定的条件进行判断满足条件给容器注册bean。