@SpringBootApplication是springboot启动类,包括三个注解(@ComponentScan && @Configuration && @EnableAutoConfiguration),他们的作用分别是:
@Configuration: 表示将该类作用springboot配置文件类

@EnableAutoConfiguration:表示程序启动时,自动加载springboot默认的配置

@ComponentScan:表示程序启动是,自动扫描当前包及子包下所有类,@ComponentScan 如果不设置basePackage的话 默认会扫描包的所有类,可根据basePackage 扫描指定的包,减少加载时间。默认扫描**/.class路径 比如这个注解在com.wuhulala 下面 ,那么会扫描这个包下的所有类还有子包的所有类,比如com.wuhulala.service包的应用

@Configuration 表示这个类中定义了Bean,会把这个类中bean加载到spring容器中
@EnableAutoConfiguration 表示 会在你开启某些功能的时候自动配置,告诉Spring Boot根据添加的jar依赖猜测你想如何配置Spring。
由于spring-boot-starter-web添加了Tomcat和Spring MVC,所以auto-configuration将假定你正在开发一个web应用,并对Spring进行相应地设置。

@Mapper && @MapperScan
Mapper类上面添加注解@Mapper,这种方式要求每一个mapper类都需要添加此注解
@MapperScan 可以指定要扫描的Mapper类的包的路径(@MapperScan(“com.demo…mapper”) || @MapperScan(“com.test…mapper", "com.demo…mapper”))

@EnableTransactionManagement && @Transactional
Spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement (启注解事务管理,等同于xml配置方式的 <tx:annotation-driven />)
开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactional 便可。

@Async && @EnableAsync
@EnableAsync 注解的意思是可以异步执行,就是开启多线程的意思。可以标注在方法、类上。
为了让@Async注解能够生效,需要在Spring Boot的主程序中配置@EnableAsync
@Async 所修饰的函数不要定义为static类型,这样异步调用不会生效

@Bean && @Configuration
@Configuration 标注在类上,相当于把该类作为spring的xml配置文件中的,作用为:配置spring容器(应用上下文)
@Bean 标注注册一个javabean 类似ssm框架的

@GetMapping && @PostMapping
Spring4.3中引进了{@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping},来帮助简化常用的HTTP方法的映射,并更好地表达被注解方法的语义。
@GetMapping是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理方法上。
@PostMapping是一个组合注解,是@RequestMapping(method = RequestMethod.POST)的缩写。该注解将HTTP Post映射到 特定的处理方法上。

@springCloudApplication 应用开启入口 比@SpringBootApplication更强大
@EnableEurekaClient开启eureka客户端 可以调用在eureka注册的服务
@EnableDiscoveryClient 不仅可以开启eureka客户端,还有consul、zookeeper
@EnableEurekaServer 开启eureka服务端 类似于注册中心zookeeper
@EnableFeignClients 开启负载均衡 包装了Ribbon
@FeignClient: 发现服务
@EnableHystrix 开启容错保护
@EnableZuulProxy 开启网关代
@MapperScan(“com.xxx.user.mapper”) 扫描mapper包,可以直接注入
标注在启动类的resttempalte方法上(负载均衡)

@LoadBalanced 开启负载均衡(客户端) 配合@EnableFeignClients
标注在javaconfig文件
@PropertySource扫描外部资源文件properties 用来配置javabean
标注在service方法
@HystrixCommand(fallbackMethod = “login”) 容错保护,配合**@EnableHystrix**
@Cacheable(value = “key” ) redis库的value就是你的返回值

@ResponseBody 注解表示该方法的返回的结果直接写入 HTTP 响应正文(ResponseBody)中,一般在异步获取数据时使用,通常是在使用 @RequestMapping 后,返回值通常解析为跳转路径,加上 @Responsebody 后返回结果不会被解析为跳转路径,而是直接写入HTTP 响应正文中;

作用:
该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。
使用时机:
返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用;

异步获取 json 数据,加上 @Responsebody 注解后,就会直接返回 json 数据。

@RequestBody注解则是将 HTTP 请求正文插入方法中,使用适合的 HttpMessageConverter 将请求体写入某个对象。

1) 该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上;
2) 再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上。

例如:

@RequestMapping(value = "user/login")
@ResponseBody// 将ajax(datas)发出的请求写入 User 对象中public User login(@RequestBody User user) {   // 这样就不会再被解析为跳转路径,而是直接将user对象写入 HTTP 响应正文中return user;    }

springboot和springcloud及常用注解积累相关推荐

  1. SpringBoot学习三:常用注解(配置相关)

    SpringBoot常用注解(配置相关) 1.yml语法 ★注意空格 yml中的写法 properties中的写法 2.@Value获取值和@ConfigurationProperties获取值比较 ...

  2. SpringBoot | 第六章:常用注解介绍及简单使用

    前言 之前几个章节,大部分都是算介绍springboot的一些外围配置,比如日志 配置等.这章节开始,开始总结一些关于springboot的综合开发的知识点.由于SpringBoot本身是基于Spri ...

  3. 【SpringBoot】SpringBoot常用注解

    一.前言 首先这里说的SpringBoot常用注解是指在我们开发项目过程中,我们经常使用的注解,包含Spring.SpringBoot.SpringCloud.SpringMVC等这些框架中的注解,而 ...

  4. 常用注解[spring 的 java 配置] ||springboot 热部署

    常用注解[spring 的 java 配置] 回顾学过的 spring 的注解 @Controller @RestController @Service @Repository @Component ...

  5. SpringBoot+Swagger2常用注解

    场景 SpringBoot+Swagger2实现可视化API文档流程: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/936166 ...

  6. SpringBoot 中常用注解@PathVaribale/@RequestParam/@GetMapping介绍

    SpringBoot 中常用注解@PathVaribale/@RequestParam/@GetMapping介绍 本篇博文将介绍几种如何处理url中的参数的注解@PathVaribale/@Requ ...

  7. 近100个Spring/SpringBoot常用注解汇总!

    作者 | Guide 来源 | JavaGuide(微信公众号) 毫不夸张地说,这篇文章介绍的 Spring/SpringBoot 常用注解基本已经涵盖你工作中遇到的大部分常用的场景.对于每一个注解我 ...

  8. SpringBoot2.1.5 (4)---SpringBoot 常用注解说明

    SpringBoot2.1.5 (4)---SpringBoot 常用注解说明 @SpringBootApplication Spring Boot的项目一般都会有*Application的入口类,入 ...

  9. java 知识积累_java学习知识积累-spring常用注解

    java学习知识积累-spring常用注解 类的分层注解,由于我们后台开发都是分为三层进行开发的,所以Spring框架提供了三种对于不同层的注解方式: 控制层:@Controller 服务层:@Ser ...

最新文章

  1. 使用APIHOOK实现进程隐藏
  2. 指针-数组传参,指针传参
  3. Java的重写和重载机制
  4. Asp.Net上传组件
  5. 搜索推荐炼丹笔记:评论是怎么影响推荐的?
  6. 2.3基本算法之递归变递推_3525上台阶
  7. 其实,API 编程并不难!
  8. 为什么天朝互联网的三巨头是BAT
  9. skywalking mysql配置_skywalking 配置和使用(windows)
  10. GitHub使用(1):从GitHub建立项目分支并克隆到本地
  11. HEX2BIN不能在win7_64位下执行的Keil官方解决方案
  12. 对主机或 Docker 镜像进行漏洞扫描
  13. python动力学_用python学振动分析(一)
  14. (四轴)无人机工作原理及组成
  15. 战狼2影评-20170807
  16. Flask中自定义红图拆分视图函数的方法以及——为什么蓝图不适合用于拆分试图函数
  17. html浅色_修改CSS样式实现网页灰色(没有颜色只有浅色黑白)的几个方法整理
  18. 笔记本合上盖子不能从睡眠中唤醒解决办法
  19. PKI CA RA KMC
  20. 2020年中国废旧纺织品回收行业市场现状分析,高值化再生技术持续推进「图」

热门文章

  1. 从BMW Vision iNEXT 看宝马如何进军自动驾驶 1
  2. 人脸识别**检测技术讨论:基于背景人脸相对运动的**判断方法
  3. SQLServer之修改存储过程
  4. alpine(Go环境)Docker基础镜像制作
  5. 十五张思维导图带你快速学习PHP语言基础
  6. 处理器(CPU)发展简史
  7. Linux系统中网络配置详解(一)
  8. php sql 中文编码,php sql如何设置编码
  9. L1-060 心理阴影面积 (5 分)-PAT 团体程序设计天梯赛 GPLT
  10. [Java] 蓝桥杯BASIC-30 基础练习 阶乘计算