1.SpringMVC相关
@EnableWebMvc
开启Web MVC的配置支持
@Controller声明该类为SpringMVC中的Controller
@RequestMapping用于映射Web请求,包括访问路径和参数
@ResponseBody在使用@Controller时如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解
@RequestParam
默认请求参数必须在URL上(value=xx 请求参数名称)
@RequestBody允许request的参数在request体中,而不是在直接连接在地址后面
@PathVariable用于接收路径参数,通常用于Restful的接口实现方法
@RestController相当于@Controller和@ResponseBody的组合
@ControllerAdvice全局控制器(Controller)控制器
@ExceptionHandler用于全局异常控制
@InitBinder用来设置WebDataBinder,WebDataBinder用来自动绑定前台请求参数到Model中
@ModelAttribute绑定键值对到Model里,在@ControllerAdvice中是让全局的 @RequestMapping都能获得在此处设置的键值对
2.Spring相关
2.1声明Bean的注解
@Controller 用于表现层
@Service 用于业务逻辑层
@Repository 用于持久层
@Component 无明层次的Bean,用于普通组件的
2.2注入Bean的注解
@Autowired org.springframework.beans.factory.annotation.Autowired
通过类型(by type)方式注入,可以通过设置required属性控制依赖对象是否必须存在
@Resource javax.annotation.Resource可以通过类型(by type)和名称(by name)两种方式注入
@Inject javax.inject.Inject与@Autowired注解类似,缺少required属性在找不到依赖对象时报错
2.3配置类相关注解
@Configuration 声明当前类为配置类
@Bean 声明当前方法的返回值为一个bean
@ComponentScan 用于对Component进行扫描
@WishlyConfiguration 相当于@Configuration+@ComponentScan
2.4AOP相关注解
@Aspect 声明一个切面
@PointCut 声明切点
@Before 前置通知
@Around 环绕通知
@After 后置通知
@AfterReturning 返回通知
@AfterThrowing 异常通知
2.5Bean的属性相关
@Scope 设置Spring容器如何新建Bean实例
Singleton 单例Bean,一个Spring容器中只有一个Bean实例【默认】
Protetype 原型Bean,每次调用新建一个Bean实例
Request 每个http request新建一个Bean实例
Session 每个http session新建一个Bean实例
GlobalSession 每个global http session新建一个Bean实例
@StepScope 在Spring Batch中还有涉及
@PostConstruct 在构造函数执行完之后执行,等价于xml配置文件中bean的initMethod
@PreDestory 在Bean销毁之前执行,等价于xml配置文件中bean的destroyMethod
3.其他常用注解
@Value 属性注入值
@EnableAsync 开启对异步支持
@Async 声明异步(方法上或类上所有的方法都将异步,需要@EnableAsync开启异步支持)
@浅见 @如有疏漏请帮忙补充完善 @开发一家人 0000003 待完善