首頁  >  文章  >  springboot常用註解有哪些

springboot常用註解有哪些

清浅
清浅原創
2019-04-12 14:17:28165706瀏覽

springboot常用註解有哪些

【推薦教學:spring教學##】

##springboot常用註解

1、@SpringBootApplication

包含@Configuration、@EnableAutoConfiguration、@ComponentScan

#通常用在主類別上。

2、@Repository

用於標註資料存取元件,即DAO元件。

3、@Service


用於標註業務層元件。
4、@RestController

用於標註控制層元件(如struts中的action),包含@Controller和@ResponseBody

#5、@ResponseBody

表示該方法的回傳結果直接寫入HTTP response body中

一般在異步取得資料時使用,在使用@RequestMapping後,回傳值通常解析為跳轉路徑,加上@responsebody後回傳結果不會被解析


為跳轉路徑,而是直接寫入HTTP response body。例如非同步取得json數據,加上@responsebody後,會直接回傳json數據。
6、@Component


泛指元件,當元件不好歸類的時候,我們可以使用這個註解來標註。
7、@ComponentScan

元件掃描。相當於611dfb857b03b245adf9fd6566a6e09a,如果掃描到有@Component @Controller @Service等這些註解的類,則把

這些類註冊為bean。

8、@Configuration


指出該類別是Bean 設定的資訊來源,相當於XML中的3c9fdce8078791299ca92e41bddc2b8fa6748f3712e7c0e1f60ffca24b3db7b0,一般加在主類上。
9、@Bean


相當於XML中的60e23eb984d18edbb092da6b8f295aba4bb0e59fd50cbfe6f6ce2215b9d94243,放在方法的上面,而不是類,意思是產生一個bean,並交給spring管理。
10、@EnableAutoConfiguration


讓 Spring Boot 根據應用程式所宣告的依賴來對 Spring 框架進行自動配置,一般會加在主類別上。
11、@AutoWired


byType方式。把配置好的Bean拿來用,完成屬性、方法的組裝,它可以對類別成員變數、方法及建構子進行標註,完成自動組裝的工作。
當加上(required=false)時,就算找不到bean也不報錯。
12、@Qualifier


當有多個相同類型的Bean時,可以用@Qualifier("name")來指定。與@Autowired配合使用
13、@Resource(name="name",type="type")

沒有括號內內容的話,預設為byName。與@Autowired幹類似的事。

14、@RequestMapping

RequestMapping是用來處理請求位址對映的註解,可用來類別或方法上。用於類別上,表示類別中的所有回應請求的方法都是以該位址作為父路徑。

此註解有六個屬性:

params:指定request中必須包含某些參數值是,才讓該方法處理。

headers:指定request中必須包含某些指定的header值,才能讓該方法處理請求。

value:指定要求的實際位址,指定的位址可以是URI Template 模式

#method:指定要求的method類型, GET、POST、PUT、DELETE等

consumes:指定處理請求的提交內容類型(Content-Type),如application/json,text/html;


produces:指定傳回的內容類型,僅當request請求頭中的(Accept)類型中包含該指定類型才會傳回
15、@RequestParam

#用在方法的參數前面。

@RequestParam String a =request.getParameter("a")。
16、@PathVariable

路徑變數。參數與大括號裡的名字一樣要相同。

RequestMapping("user/get/mac/{macAddress}")
public String getByMacAddress(@PathVariable String macAddress){
  //do something;
  }
17、@Profiles

Spring Profiles提供了一種隔離應用程式配置的方式,並讓這些配置只能在特定的環境下生效。

任何@Component或@Configuration都能被@Profile標記,從而限制載入它的時機。

@Configuration
@Profile("prod")
public class ProductionConfiguration {    // ...}
18、@ConfigurationProperties

#Spring Boot將嘗試校驗外部的配置,預設使用JSR-303(如果在classpath路徑中)。


你可以輕鬆的為你的@ConfigurationProperties類別添加JSR-303 javax.validation約束註解:

@Component
@ConfigurationProperties(prefix="connection")
public class ConnectionSettings {
@NotNullprivate InetAddress remoteAddress;
// ... getters and setters
}
全域異常處理

#@ControllerAdvice

包含@Component。可以被掃描到。

統一處理異常

@ExceptionHandler(Exception.class):

用在方法上面表示遇到這個例外就執行以下方法

總結:以上就是本篇文章的全部內容了,希望對大家有幫助。 ###

以上是springboot常用註解有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn