一、常用的Spring Boot 註解
Spring Boot 是一個快速創建 Spring 應用程序的框架,其基於 Spring 框架,可以輕鬆快捷地搭建生產級別的應用程序。在 Spring Boot 的開發過程中,使用註解可以大大簡化開發工作,以下是常用的 Spring Boot 註解:
- @SpringBootApplication:標識 Spring Boot 應用的主類,兼有 @Configuration、@EnableAutoConfiguration、@ComponentScan 註解的功能。
- @RestController:使一個類成為 REST 風格的 Spring MVC 控制器,等價於添加 @Controller 和 @ResponseBody 註解。
- @RequestMapping:用於映射 HTTP 請求到控制器的處理方法上,可以用來設置 URL、請求參數、請求方法、請求頭等屬性。
- @PathVariable:用於將 URI 模板變數映射到控制器處理方法的參數上。
- @RequestParam:用於將請求參數映射到控制器處理方法的參數上。
- @Autowired:用於自動注入 Spring Bean。
- @Qualifier:在自動注入 Bean 的基礎上,按照 Bean 名稱或 qualifying annotation 進行限定。
- @ConfigurationProperties:用於將配置文件中的屬性映射到 Bean 的屬性上。
- @Bean:用於在 Spring 容器中註冊 Bean。
- @Component:通用的 Spring 組件註解。
二、常用註解的使用示例
1、@RestController 和 @RequestMapping
以下示例展示了如何使用 @RestController 和 @RequestMapping 實現一個簡單的控制器,輸出 “Hello, World!”:
@RestController public class GreetingController { @RequestMapping("/hello") public String hello() { return "Hello, World!"; } }
2、@PathVariable 和 @RequestParam
以下示例展示了如何使用 @PathVariable 和 @RequestParam 處理 URL 上的參數,並輸出結果:
@RestController public class UserController { @RequestMapping("/users/{id}") public String getUserInfo(@PathVariable Long id, @RequestParam String name) { return "User #" + id + " name is " + name; } }
3、@Autowired 和 @Qualifier
以下示例展示了如何使用 @Autowired 和 @Qualifier 自動注入 Spring Bean,並通過限定名稱輸出 Bean 的屬性值:
@Component public class User { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } } @Service public class UserService { @Autowired @Qualifier("user") // 限定名稱為 "user" 的 Bean private User user; public String sayHello() { return "Hello, " + user.getName() + "!"; } } @Configuration public class AppConfig { @Bean public User user() { User user = new User(); user.setName("Tom"); return user; } } @RestController public class UserController { @Autowired private UserService userService; @RequestMapping("/hello") public String hello() { return userService.sayHello(); } }
4、@ConfigurationProperties 和 @Value
以下示例展示了如何使用 @ConfigurationProperties 將配置文件中的屬性映射到 Bean 的屬性上,並使用 @Value 註解輸出配置文件的屬性值:
@Configuration @ConfigurationProperties(prefix = "my.config") public class MyConfig { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } } @RestController public class MyController { @Autowired private MyConfig myConfig; @Value("${my.config.desc}") private String desc; @RequestMapping("/hello") public String hello() { return "Hello, " + myConfig.getName() + "! " + desc; } }
三、小結
Spring Boot 通過註解的方式,極大地簡化了常規的配置工作,從而提高了開發效率。本文介紹了常用的 Spring Boot 註解,並且給出了相關的代碼示例,以幫助讀者更好地理解和使用 Spring Boot。
原創文章,作者:GCWXC,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/370019.html