spring常用注解
1. 给容器注入组件
组件标注注解
@Component : 将各种组件交由spring管理
**@Controller:**控制层
**@Service:**业务层
**@Repository:**数据访问层
@Controller、@Service、@Repository都可以称为@Component
都用于类上
@Bean
用于方法上 ,表示将该方法的返回值对象交由Spring管理
2.依赖注入注解
@Autowired : 可以作用在变量、setter方法、构造函数上
@Inject:用法和@Autowired一样
**@Resource ** :按照名称匹配去找对应的bean
@Autowired、@Inject是默认按照类型匹配的,@Resource是按照名称匹配的,
@Autowired如果需要按照名称匹配需要和@Qualifier一起使用,@Inject和@Name一起使用。
3.JsonIgnore
一般在属性上使用,表示在json序列化时将java bean中的这个属性忽略掉,序列化和反序列化都受影响,也就是说,返回的json数据即不包含该属性
如果该注解失效,可能是因为你使用的是fastJson,可以尝试使用fastJson对应的注解来忽略字段,注解为:@JSONField(serialize = false),效果一样。
4.Java配置类相关注解
@Configuration 声明当前类为配置类;
@Bean 在方法上使用,声明当前方法的返回值为一个bean,替代xml中使用声明的方式;
@ComponentScan 用于对Component进行扫描
5.AOP相关注解
Spring支持AspectJ的注解式切面编程
@Aspect 声明一个切面
@After 在方法执行之后执行(方法上)
@Before 在方法执行之前执行(方