常用框架注解说明
一. SpringMVC
- @RequestParam 请求参数(形参注解)
- @RequestMapping 请求地址
- @ResponseBody 启用注解,则可以直接响应到页面
- @RequestHeader 请求头数据(形参注解)
- @RequestBody 请求体,将异步提交数据组织成标准请求参数格式,并赋值给形参
- @CrossOrigin 设置当前处理器方法/处理器类中所有方法支持跨域访问
- @ControllerAdvice 设置当前类为异常处理器类
- @ExceptionHandler 设置指定异常的处理方式
- @RestController 设置rest风格的控制器,@Controller & @ResponseBody综合成该注解
- @GetMapping 请求简化配置方式
- @PostMapping 请求简化配置方式
- @PutMapping 请求简化配置方式
- @DeleteMapping 请求简化配置方式
二. Spring
- IOC
- @Component 除三层外其他类,启用该注解,将该类对象放入spring容器中
- @Controller 控制层,放入spring容器中
- @Service 业务层,放入spring容器中
- @Repository 数据持久层,放入spring容器中
- @Bean 加载第三方bean对象,放入spring容器中
- @Value 注入属性的值
- @Autowired 注入容器中的bean对象到成员变量
- @Qualifier
- @PropertySource 加载properties文件中的属性值
- @Configuration 设置当前类为spring核心配置类
- @ComponentScan 配置类中扫描所有注解的bean到spring容器中
-
@ComponentScan(
value="com.itheima", //设置基础扫描路径
excludeFilters = //设置过滤规则,当前为排除过滤
@ComponentScan.Filter( //设置过滤器
type= FilterType.ANNOTATION, //设置过滤方式为按照注解进行过滤
classes=Repository.class) //设置具体的过滤项,过滤所有@Repository修饰的bean
)
- AOP
- @Aspect 设置当前类为切面类
- @Pointcut 使用当前方法名作为切入点,并设置切入点规则
- @Before 标注当前方法作为前置通知
- @After 标注当前方法作为后置通知
- @AfterReturning 标注当前方法作为返回后通知
- @AfterThrowing 标注当前方法作为异常后通知
- @Around 标注当前方法作为环绕通知
- @EnableAspectJAutoProxy 设置当前类开启AOP注解驱动的支持,加载AOP注解
- 事务
- @Transactional 设置当前类/接口中所有方法或具体方法开启本地事务,并指定相关事务属性
- @EnableTransactionManagement 开启注解驱动,等同XML格式中的注解驱动
- 整合
- @RunWith(SpringJUnit4ClassRunner.class) Spring整合Junit测试用例注解格式
- @ContextConfiguration(classes = 配置类名.class/locations = "classpath:配置文件名.xml") Spring整合Junit测试用例注解格式
- 其余不梳理
三. Mybatis
- @Insert:实现新增
- @Update:实现更新
- @Delete:实现删除
- @Select:实现查询
- @Result:实现结果集封装
- @Results:可以与@Result 一起使用,封装多个结果集
- @One:实现一对一结果集封装
- @Many:实现一对多结果集封装
四. SpringBoot
- @Value 获取数据
- @ConfigurationProperties(prefix = " ") 获取数据
- @Mapper 数据持久层
- @Repository 数据持久层
- @SpringBootApplication 启动类注解
- @GlobalTransactional 启动分布式事务注解(seate框架中)
五. SpringCloud
- Eureka
- @EnableEurekaServer 启用EurekaServer服务中心的注解。 表示,该微服务为EurekaServer服务中心
- @EnableEurekaClient 启用EurekaClient客户端的注解。 表示,该微服务为提供者或消费者客户端 在新版本中可以省略(不建议省略)
- @EnableDiscoveryClient 激活DiscoveryClient 从服务中心抓取DiscoveryClient对象,就可以获取里面数据,获取动态ur
- Feign
- @FeignClient(value = "服务提供者的应用名称") 启动Feign声明式接口。用于发起远程调用的。
- @EnableFeignClients 启用注解,开启Feig的功能。
- Hystrix
-
@HystrixCommand(
fallbackMethod = "降级方法名",commandProperties = {
//设置Hystrix的超时时间,默认1s
@HystrixProperty(name="execution.isolation.thread.timeoutInMilliseconds",value = "3000") 启动注解,配置降级方法。
- @EnableCircuitBreaker 启用注解,开启Hystrix功能。
- @FeignClient(value = "服务提供者的应用名称",fallback = 降级处理类.class) 启用@FeignClient 注解。
- config
- @RefreshScope 启用注解,开启刷新功能
- @EnableConfigServer 启用注解,开启config server功能
- bus
- @RefreshScope 启用注解,开启刷新功能
- stream
- @EnableBinding(Source.class)
- @EnableBinding({Sink.class}) 创建和绑定通道
- @StreamListener(Sink.INPUT)