Spring?Boot?常用注解速查表(快速查找)
?? Spring Boot 常用注解速查表
?? 分類整理 + 應(yīng)用說(shuō)明,適用于日常開(kāi)發(fā)參考。
?? 核心注解(IOC/AOP)
注解 | 作用 | 應(yīng)用層 |
|---|---|---|
@Component | 標(biāo)識(shí)一個(gè)通用組件,注冊(cè)到 Spring 容器 | 所有組件 |
@Service | 表示服務(wù)層組件(業(yè)務(wù)邏輯) | Service |
@Repository | 表示 DAO 層組件,帶異常轉(zhuǎn)換功能 | Repository |
@Controller | 表示控制器組件,返回視圖 | Web 控制層 |
@RestController | @Controller + @ResponseBody,返回 JSON | Web API |
@Autowired | 按類型注入 Bean | 所有層 |
@Resource | 默認(rèn)按名稱注入 Bean | 所有層 |
@Value("${key}") | 注入配置文件中的屬性值 | 所有層 |
@PostConstruct | Bean 初始化后執(zhí)行方法 | 所有層 |
@PreDestroy | Bean 銷毀前執(zhí)行方法 | 所有層 |
?? Web 開(kāi)發(fā)相關(guān)(Spring MVC)
注解 | 作用 |
|---|---|
@RequestMapping | 映射請(qǐng)求路徑(支持 GET/POST 等) |
@GetMapping / @PostMapping | 更具體的請(qǐng)求方法映射 |
@PathVariable | 獲取 URL 中的路徑變量 |
@RequestParam | 獲取請(qǐng)求參數(shù)(?key=value) |
@RequestBody | 接收 JSON 請(qǐng)求體并映射為對(duì)象 |
@ResponseBody | 將方法返回值轉(zhuǎn)為 JSON |
@ModelAttribute | 用于表單綁定參數(shù)到對(duì)象 |
@CrossOrigin | 支持跨域請(qǐng)求 |
@SessionAttributes | 設(shè)置需要存儲(chǔ)到 session 的屬性 |
?? 配置類 / 自動(dòng)裝配相關(guān)
注解 | 作用 |
|---|---|
@SpringBootApplication | 啟動(dòng)類核心注解(包含 3 個(gè)注解) |
@Configuration | 定義配置類(相當(dāng)于 XML 配置) |
@Bean | 將方法返回對(duì)象注冊(cè)為 Bean |
@ComponentScan | 指定掃描組件的基礎(chǔ)包 |
@EnableAutoConfiguration | 啟用 Spring Boot 自動(dòng)配置 |
@EnableConfigurationProperties | 開(kāi)啟配置綁定支持 |
@ConfigurationProperties(prefix="...") | 將配置文件的屬性注入到 Java 類 |
??? 數(shù)據(jù)訪問(wèn)(JPA)
注解 | 作用 |
|---|---|
@Entity | 定義實(shí)體類 |
@Table(name="...") | 指定數(shù)據(jù)庫(kù)表名 |
@Id | 定義主鍵 |
@GeneratedValue | 主鍵生成策略 |
@Column | 配置列名、約束等 |
@Repository | 標(biāo)注數(shù)據(jù)訪問(wèn)層類 |
?? 測(cè)試相關(guān)
注解 | 作用 |
|---|---|
@SpringBootTest | 啟動(dòng)整個(gè) Spring Boot 環(huán)境進(jìn)行測(cè)試 |
@WebMvcTest | 測(cè)試 Controller 層(不啟動(dòng)整個(gè)容器) |
@DataJpaTest | 測(cè)試 JPA 數(shù)據(jù)層 |
@MockBean | 向測(cè)試環(huán)境注入 mock 的 Bean |
?? 其他實(shí)用注解
注解 | 作用 |
|---|---|
@Primary | 標(biāo)記為首選注入 Bean(多個(gè) Bean 時(shí)) |
@ConditionalOnProperty | 根據(jù)配置文件條件啟用 Bean |
@Slf4j | 自動(dòng)注入日志對(duì)象(需 lombok) |
?? 建議組合使用(常見(jiàn)套路)
// 啟動(dòng)類
@SpringBootApplication
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
// Controller 示例
@RestController
@RequestMapping("/api")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/users/{id}")
public User getUser(@PathVariable Long id) {
return userService.getById(id);
}
}到此這篇關(guān)于java多線程的文章就介紹到這了,更多相關(guān)java多線程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring boot 默認(rèn)靜態(tài)資源路徑與手動(dòng)配置訪問(wèn)路徑的方法
這篇文章主要介紹了Spring boot 默認(rèn)靜態(tài)資源路徑與手動(dòng)配置訪問(wèn)路徑的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-05-05
Java中實(shí)現(xiàn)String字符串分割的3種方法
這篇文章主要介紹了Java中實(shí)現(xiàn)String字符串分割的3種方法,文章底部介紹了JAVA?截取字符串的三種方法subString,StringUtils,split,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05
java中rss解析器(rome.jar和jdom.jar)示例
這篇文章主要介紹了java中rss解析器(rome.jar和jdom.jar)示例,需要的朋友可以參考下2014-03-03
使用Spring安全表達(dá)式控制系統(tǒng)功能訪問(wèn)權(quán)限問(wèn)題
從spring security 3.0開(kāi)始已經(jīng)可以使用spring Expression表達(dá)式來(lái)控制授權(quán),允許在表達(dá)式中使用復(fù)雜的布爾邏輯來(lái)控制訪問(wèn)的權(quán)限。這篇文章主要介紹了使用Spring安全表達(dá)式控制系統(tǒng)功能訪問(wèn)權(quán)限,需要的朋友可以參考下2019-11-11
java后端請(qǐng)求兌現(xiàn)request的中文亂碼問(wèn)題解決
文章主要講述了在處理處理方案工作中遇到中文亂碼問(wèn)題的解決過(guò)程,通過(guò)復(fù)現(xiàn)和分析亂碼問(wèn)題,發(fā)現(xiàn)是由于解碼規(guī)則和后端服務(wù)編碼不一致導(dǎo)致的,最終通過(guò)修改過(guò)濾器中的編碼設(shè)置解決了問(wèn)題2025-02-02
JavaWeb項(xiàng)目中springmvc和tomcat對(duì)靜態(tài)文件的處理
這篇文章主要介紹了JavaWeb項(xiàng)目中springmvc和tomcat對(duì)靜態(tài)文件的處理 的相關(guān)資料,需要的朋友可以參考下2016-07-07

