本篇文章將介紹幾種SpringBoot 中常用註解
其中,各註解的作用為:
@PathVaribale 獲取url中的數據
@RequestParam 獲取請求參數的值
@GetMapping 組合註解,是@RequestMapping(method = RequestMethod.GET)的縮寫
@RestController是@ResponseBody和@Controller的組合註解。
@PathVaribale 獲取url中的數據
看一個例子,如果我們需要獲取Url=localhost:8080/hello/id中的id值,實現代碼如下:
@RestControllerpublic class HelloController { @RequestMapping(value="/hello/{id}",method= RequestMethod.GET) public String sayHello(@PathVariable("id") Integer id){ return "id:"+id; }}@RequestParam 獲取請求參數的值
直接看一個例子,如下
@RestControllerpublic class HelloController { @RequestMapping(value="/hello",method= RequestMethod.GET) public String sayHello(@RequestParam("id") Integer id){ return "id:"+id; }}在瀏覽器中輸入地址:localhost:8080/hello?id=1000,可以看到如下的結果:
當我們在瀏覽器中輸入地址:localhost:8080/hello?id ,即不輸入id的具體值,此時返回的結果為null。具體測試結果如下:
@GetMapping 組合註解
@GetMapping是一個組合註解,是@RequestMapping(method = RequestMethod.GET)的縮寫。該註解將HTTP Get 映射到特定的處理方法上。
即可以使用@GetMapping(value = “/hello”)來代替@RequestMapping(value=”/hello”,method= RequestMethod.GET) 。即可以讓我們精簡代碼。
例子
@RestControllerpublic class HelloController { //@RequestMapping(value="/hello",method= RequestMethod.GET) @GetMapping(value = "/hello") //required=false 表示url中可以不穿入id參數,此時就使用默認參數public String sayHello(@RequestParam(value="id",required = false,defaultValue = "1") Integer id){ return "id:"+id; }}@RestController
Spring4之後新加入的註解,原來返回json需要@ResponseBody和@Controller配合。
即@RestController是@ResponseBody和@Controller的組合註解。
@RestControllerpublic class HelloController { @RequestMapping(value="/hello",method= RequestMethod.GET) public String sayHello(){ return "hello"; }}與下面的代碼作用一樣
@Controller@ResponseBodypublic class HelloController { @RequestMapping(value="/hello",method= RequestMethod.GET) public String sayHello(){ return "hello"; }}註解@RequestParam 和@PathVarible的區別
@RequestParam是請求中的參數。如get? id=1
@PathVarible是請求路徑中的變量如get/id=1
總結
以上所述是小編給大家介紹的SpringBoot 中常用註解及各種註解作用,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!