SpringBoot常用注解

SpringBoot常用注解

@RestController 控制器注解

@Cotroller、@ResponseBody、@RestController区别 Cotroller注解,请求解析成跳转路径不是json ResponseBody注解,Cotroller注解的请求就会被解析成json,常用在方法中。 RestControlle注解会把请求直接解析成json RestControlle=Cotroller+ResponseBody 当一个控制类中有多个方法,且方法返回的对象要求解析成的格式不一样时常用Cotroller+ResponseBody的方式。

@RequestParam
获取url参数 ?name=value
@RequestParam(value = “name”,defaultValue = “张三”) String name

@RequestParam 支持下面四种参数    
defaultValue 如果本次请求没有携带这个参数,或者参数为空,那么就会启用默认值
name 绑定本次参数的名称,要跟URL上面的一样
required 这个参数是不是必须的
value 跟name一样的作用,是name属性的一个别名

@PathVariable
路径模板变量 /user/{id} @PathVariable(“id”) Long id

@PathParam
question变量 /user?id=66 @PathParam(“id”) Long id

@RequestBody
接受post传过来的参数体到一个对象中 {‘id’:1,‘name’:‘haha’} xxx(@RequestBody Tags tags)

@ResponseBody
返回值是json 将函数的返回值直接填入HTTP响应体中

@RequestMapping
路由注解 @RequestMapping(value = “/{id}”,method = RequestMethod.GET)

@GetMapping
GET路由注解 @GetMapping("/user/{id}")

@PostMapping
POST路由注解 @PostMapping("/user")

@RequestMapping

@RequestMapping(“/path”)表示该控制器处理所有“/path”的UR L请求。RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。 
用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。该注解有六个属性: 

1.  params:指定request中必须包含某些参数值是,才让该方法处理。
2.  headers:指定request中必须包含某些指定的header值,才能让该方法处理请求。 
3.   value:指定请求的实际地址,指定的地址可以是URI
4.   method:指定请求的method类型, GET、POST、PUT、DELETE等 
5.   consumes:指定处理请求的提交内容类型(Content-Type),如application/json,text/html; 
6.  produces:指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回

@RestControllerAdvice
注解@ControllerAdvice是一个组件注解(component annotation),它允许实现类通过类路径扫描被自动检测到。当使用 MVC 命名空间或者 MVC Java 配置时自动启用

@ControllerAdvice
包含@Component。可以被扫描到。统一处理异常。

@ExceptionHandler(Exception.class)
用在方法上面表示遇到这个异常就执行以下方法。

@Value("${face_api_key}")
读取application.properties里面的配置, 使用@Value的类如果被其他类作为对象引用,必须要使用注入的方式,而不能new

@Bean:相当于XML中的,放在方法的上面,而不是类,意思是产生一个bean,并交给spring管理。

@Component:泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。

@Inject:等价于默认的@Autowired,只是没有required属性;

@Import:用来导入其他配置类。

@ImportResource:用来加载xml配置文件。

@Service:一般用于修饰service层的组件

@Repository:使用@Repository注解可以确保DAO或者repositories提供异常转译,这个注解修饰的DAO或者repositories类会被ComponetScan发现并配置,同时也不需要为它们提供XML配置项。

@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让Spring Boot扫描到Configuration类并把它加入到程序上下文。

@Configuration 等同于spring的XML配置文件;使用java代码可以检查类型安全。

@EnableAutoConfiguration 自动配置。

@Profiles 让修饰的配置只能在特定的环境下生效。任何@Component或@Configuration都能被@Profile标记,从而限制加载它的时机。

@ComponentScan 组件扫描,可自动发现和装配一些Bean。

@RestController注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直 接填入HTTP响应体中,是REST风格的控制器。

@Autowired 自动导入。

@JsonBackReference 解决嵌套外链问题。

@RepositoryRestResourcepublic配合spring-boot-starter-data-rest使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值