SpringBoot中重要注解詳解
Spring Boot注解是一種元數(shù)據(jù)形式,可提供有關(guān)程序的數(shù)據(jù)。換句話說,注解用于提供有關(guān)程序的 補(bǔ)充信息。它不是我們開發(fā)的應(yīng)用程序的一部分。它對其注解的代碼的操作沒有直接影響。不會更改已編譯程序的操作。
@SpringBootApplication

SpringBoot依靠@SpringBootApplication注解完成自動配置,該注解包含以下三個重要的注解,分別是:
- @SpringBootConfiguration 注解 它實際上就是一個 @Configuration 注解
- @ComponentScan 注解 用于定義 Spring 的掃描包路徑
- @EnableAutoConfiguration注解 實現(xiàn)自動配置
Controller控制層中重要注解
注解:@Controller
Controller負(fù)責(zé)標(biāo)識這個類是個Controller類,Spring檢測到@Controller注解時,將其自動注冊為Controller對象 ,是一種整體頁面刷新提交的處理注解( 比如form提交 )。
package com.controller;
import org.springframework.stereotype.Controller;
...
@Controller
public class Hello {
...
}@Controller類中的方法可以直接通過返回String跳轉(zhuǎn)到j(luò)sp、ftl、html等模版頁面。
在方法上加 @ResponseBody注解,也可以返回實體對象。
對應(yīng)的還有一個 @RestController類中的所有方法只能返回String、Object、Json等實體對象,不能跳轉(zhuǎn)到模版頁面。
注解:@RequestMapping(“/”)
注解告知Spring這個類或者函數(shù)映射到哪個URL
@RequestMapping(
path = { "/test" }, // 訪問路徑
params = { "name", "userId"}, //URL攜帶的參數(shù)
method = { RequestMethod.GET}, //表示請求方式
consumes = {"text/plain", "application/"},//指定處理請求的提交內(nèi)容類型(Content-Type)
produces = "text/plain", //指定響應(yīng)類型
headers = "content-type=text/"http://指定request中必須包含某些指定的header值才能讓該方法處理請求)
注意 :
1、@RequestMapping不指定參數(shù)名時,默認(rèn)為path參數(shù)
2、path參數(shù)可以是個變量,通過{}來標(biāo)識
3、@PathVaiable用于讀取URL中的數(shù)據(jù)
@RequestMapping(path="test/login/{name}/{id}", method=RequestMethod.GET)
public String login(@PathVariable("name") String strName, @PathVariable("id") Integer id)
{
return strName +id.toString();
}
@RequestParam用于讀取URL中的數(shù)據(jù)
@RequestMapping(path = "test/login" , method=RequestMethod.GET)
public String login(@RequestParam(value="name",required = false,defaultValue = "tom")
String strName,@RequestParam(value="id",required = false,defaultValue = "123") Integer id){
return strName + id.toString();
}
注解:@ResponseBody
正常情況下,Controller類中函數(shù)返回是一個模板對象(頁面)。但是有時候我們希望返回值數(shù)值型(字符串或者Json格式數(shù)據(jù)),這時就需要添加@ResponseBody注解。
@ResponseBody注解可以添加到類或者函數(shù)上 。
注解:@RestController、@GetMapping 和@PostMapping
這三個注解都是組合注解
@RestController = @Controller + @ResposeBody
@GetMapping相當(dāng)于@RequestMapping(method=RequestMethod.GET) 表示前端向后端發(fā)出請求數(shù)據(jù)命令,后端根據(jù)具體請求(URL)找到對應(yīng)的資源并返回給前端。
@PostMapping相當(dāng)于@RequestMapping(method=RequestMethod.POST) 表示前端向后端發(fā)送數(shù)據(jù),后端根據(jù)命令,將給數(shù)據(jù)持久化到數(shù)據(jù)庫中,實現(xiàn)數(shù)據(jù)的更新。
到此這篇關(guān)于SpringBoot中重要注解詳解的文章就介紹到這了,更多相關(guān)springboot注解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java+Eclipse+Selenium環(huán)境搭建的方法步驟
這篇文章主要介紹了Java+Eclipse+Selenium環(huán)境搭建的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-06-06
Java+Freemarker實現(xiàn)根據(jù)XML模板文件生成Word文檔
這篇文章主要為大家詳細(xì)介紹了Java如何使用Freemarker實現(xiàn)根據(jù)XML模板文件生成Word文檔,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以學(xué)習(xí)一下2023-11-11
在Web項目中手機(jī)短信驗證碼實現(xiàn)的全過程記錄
這篇文章主要給大家介紹了關(guān)于在Web項目中實現(xiàn)短信驗證碼的全過程記錄,文中通過示例代碼介紹的非常詳細(xì),在文末跟大家提供了源碼下載,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12

