您的位置:首页 > 编程语言 > Java开发

微服务开发的入门级框架Spring Boot详解:注解

2017-08-12 00:00 585 查看
通过前两章节的介绍,大家应该对Spring Boot有了些许的认识,也感觉到了这个框架带来的便利,下面我将讲解SpringBoot的一些常用注解。

1、Controller注解的使用

1.1 简介



1.2 RestController 注解详解

RestController相当于@ResponseBody+@Controller,用来响应HTTP请求。在类之前加,不加就无法响应Http请求了。



1.3 RequestMapping 注解详解

RequestMapping用来配置URL映射,可以加在类上,也可加在方法上。



如果把注解加在类上,访问此类下的方法,则需要在URL上加类上的映射。效果如下:注:joyou这个路径是之前在yml中配置的。



如果一个方法,既想用hello访问,也想用hi访问,那么只需要把value属性配置为数组方式即可。在类上也一样。



浏览器访问效果如下:使用hello和hi都可以访问此方法



可以看到在日志输出结果如下



1.4 RequestMapping 注解中Method属性详解

我们可以看到映射这里的属性有非常多的选择,规则如下:主要的作用是限制此方法的请求方式。 (PS:我记得有一次面试,HR问我SpringMVC 如何只允许Post方式访问一个方法?我当时也不知道直接在这设置就行了,我回答的是写一个拦截器,拦截掉所有非Post请求.......现在想想我当时想法好天真的,哈哈!)



如果设为Get,那么只能接收Get请求,设置为Post,就只能接收Post请求。下面用Get做一个实验。

首先将Method设为Get。

@RequestMapping(value="/hello" , method = RequestMethod.GET)
public String HelloSpring(){

return girl.toString();
}

使用火狐浏览器的发包工具,向服务器发送一个GET请求,返回200状态码,说明请求成功!



使用火狐浏览器的发包工具,向服务器发送一个POST请求,返回405状态码,说明失败了!



上面通过设置其属性的方式,有朋友会觉得很麻烦,而Spring也早就为我们提供了一种更优雅的方式,将在下一章节介绍。

2、URL中参数的接收

2.1 简介



2.2 @PathVariable 注解详解

使用@PathVariable 注解可以接收URL中的数据值,格式如下:



浏览器带参数访问URL,可以看见输入的参数已经接收并返回给视图。



2.3 @RequestParam注解详解

使用RequestParam注解可以接收URL中参数的值,格式如下:(请大家注意与@PathVariable注解接收参数书写格式和代入参数的格式 )



浏览器带参数访问URL,效果如下:



需要注意的是,如果开启此注解访问URL不带参数则会报错!

那么比如说我不想每次都带参数,有时候带有时候不带,这种情况怎么办呢?RequestParam中还有其他属性:required 是否为必传,defaultValue 默认值。请看下面的截图:



浏览器不带参数访问结果如下,返回默认值0:



2.4 使用组合注解

上一章提到过一种优雅的限制请求类型的方法,就是使用@GetMapping @PostMapping@DeleteMapping等注解,例如@GetMapping 其相当于@RequestMapping( method = RequestMethod.GET),怎么样是不是更简略了?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  SpringBoot