@RequestMapping |
用在類和方法上,用於類上表示父路徑,如demo,方法上表示子路徑,如demo1。訪問路徑爲:demo/demo1 屬性:params, headers, value, method, consumes, produces |
@PathVariable |
路徑上的變量,用在參數前,路徑上的變量名和參數名稱一致 @RequestMapping("demo/demo1/{name}") public String say(@PathVariable String name){ } |
@RequestParam |
等價於下面代碼 |
@RequestBody |
方法參數綁定到HTTP請求的Body上,前端需要用json提交。 @RequestMapping(value = "/something", method = RequestMethod.PUT) public void handle(@RequestBody String body,@RequestBody User user){ //可以綁定自定義的對象類型 } |
@ResponseBody |
表示輸出的格式是json,用返回值填補HTTP的Body |
@Bean |
相當於xml裏面配置<bean></bean>, 放在方法上面,而不是類,意思是產生一個bean並交給spring管理 |
@Autowired |
Spring的註釋,可用於類的屬性,構造器,方法進行註釋 |
@Qualifier |
當有同一類型的Bean時,可以用@Qualifier("name")來指定。與@Autowired配合使用 |
@Resource |
java的註釋,爲目標bean指定協作者Bean,相當與Autowired,但是以名字方式注入,Autowired以類型方式注入(但是可以配合Qualifier使用,否則一個類多個對象會拋出異常)。 |
@Repository |
標註一個DAO組件類 |
@Service |
標註一個業務邏輯組件類,可以自定義Bean名稱,但必須唯一。 |
@Controller |
標註一個控制器組件類 |
@Component |
可以替代@Repository、@Service、@Controller,因爲三個註解都被@Component標註。被註解的java類當做Bean實例,Bean實例的名稱默認是Bean類的首字母小寫,其他不變。 |
@SpringBootApplication |
包含@Configuration、@EnableAutoConfiguration、@ComponentScan,通常用在啓動類上。 |
@RestController |
@Controller和@ResponseBody的集合。並且將函數的返回值直接填入HTTP的響應體中,是REST風格的控制器。 |
@JsonBackReference |
解決嵌套外鏈接問題 |
@ComponentScan |
組件掃描。如果掃描到有@Component @Controller @Service等這些註解的類,則把這些類註冊爲bean。讓springboot掃描到Configuration類,並把它加入到程序上下文。自動發現和裝配Bean |
|
|
@Conditional |
用來標緻一個spring bean或者configuration配置文件,當滿足指定的條件纔開啓配置 |
@ConditionalOnBean |
組合@Conditional註解,當容器中有指定的Bean纔開啓配置。 |
@ConditionalOnMissingBean |
和上面的註解相反,當容器中沒有指定的Bean纔開啓配置。 |
@ConditionalOnClass |
|
@ConditionalOnMissingClass |
組合@Conditional,兩者爲相反註解,當容器中沒有/有指定class纔開啓配置。 |
@ConditionalOnWebApplication |
|
@ConditionalOnNotWebApplication |
同上,當前項目類型是或者不是web項目纔開啓配置。 |
@ConditionalOnProperty |
組合@Conditional註解,當指定的屬性有指定的值時纔開啓配置。 |
@ConditionalOnJava |
當運行的java JVM在指定版本範圍內時纔開啓配置 |
@ConditionalOnResource |
當類路徑下有指定的資源纔開啓配置。 |
@COnditionalOnSingleCandidate |
當指定的class在容器中只有一個Bean,或者同時有多個但爲首選時纔開啓配置。 |
|
|
@ConfigurationProperties |
用來加載額外的配置,用在@Configuration註解類或者@Bean註解方法上面。 |
@EnableConfigurationProperties |
配合@ConfigurationProperties註解使用,用來開啓對@ConfigurationProperties註解配置Bean的支持。 |
@AutoConfigureAfter |
|
@AutoConfigureBefore |
表示該自動配置類需要在另外指定的自動配置類配置前/後配置 |
@Configuration |
指出該類是Bean配置的信息源,相當於XML中的<beans></beans>,一般加在主類上,配置文件裏能做的事可以在註解下面的類做。 @Configuration是隨容器啓動開始加載的,始終存在的單例模式。 @Component是使用一次即實例化一次 |
|
|
@Profiles |
Spring Profiles提供了一種隔離應用程序配置的方式,並讓這些配置只能在特定的環境下生效。 任何@Component或@Configuration都能被@Profile標記,從而限制加載它的時機。 @Configurationbr/>@Profile("prod") public class ProductionConfiguration { // ... } |
@Vaue |
注入application.properties配置的屬性的值 @Value("${defaultPageNum}") private String message; |
@ImportResource |
有些通過類的註冊方式配置不了的,可以使用這個註解指定xml文件,老的配置很管用 |
@Import: |
用來引入額外的一個或者多個 @Configuration 修飾的配置文件類. 多個配置類嵌套使用時有用。 |
@SpringBootConfiguration |
@Configuration的變體,作用一樣。 |
@RequestHeader |
獲取http請求頭某個變量信息 |
@GetMapping |
get提交,參數在url中 |
@PostMapping |
post提交,參數在body中 |
@DeleteMapping |
delete提交,參數在url中 |
@PutMapping |
put提交,參數在url中,一般用於更新 |