国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Java開(kāi)發(fā)者必須掌握的20個(gè)Spring常用注解

開(kāi)發(fā) 后端
注解本身沒(méi)有功能的,就和 xml 一樣。注解和 xml 都是一種元數(shù)據(jù),元數(shù)據(jù)即解釋數(shù)據(jù)的數(shù)據(jù),這就是所謂配置。

[[261286]]

注解本身沒(méi)有功能的,就和 xml 一樣。注解和 xml 都是一種元數(shù)據(jù),元數(shù)據(jù)即解釋數(shù)據(jù)的數(shù)據(jù),這就是所謂配置。

本文主要羅列 Spring|Spring MVC相關(guān)注解的簡(jiǎn)介。

Spring部分

1、聲明bean的注解

@Component 組件,沒(méi)有明確的角色

@Service 在業(yè)務(wù)邏輯層使用(service層)

@Repository 在數(shù)據(jù)訪問(wèn)層使用(dao層)

@Controller 在展現(xiàn)層使用,控制器的聲明(C)

2、注入bean的注解

@Autowired:由Spring提供

@Inject:由JSR-330提供

@Resource:由JSR-250提供

都可以注解在set方法和屬性上,推薦注解在屬性上(一目了然,少寫(xiě)代碼)。

3、java配置類(lèi)相關(guān)注解

@Configuration 聲明當(dāng)前類(lèi)為配置類(lèi),相當(dāng)于xml形式的Spring配置(類(lèi)上)

@Bean 注解在方法上,聲明當(dāng)前方法的返回值為一個(gè)bean,替代xml中的方式(方法上)

@Configuration 聲明當(dāng)前類(lèi)為配置類(lèi),其中內(nèi)部組合了@Component注解,表明這個(gè)類(lèi)是一個(gè)bean(類(lèi)上)

@ComponentScan 用于對(duì)Component進(jìn)行掃描,相當(dāng)于xml中的(類(lèi)上)

@WishlyConfiguration 為@Configuration與@ComponentScan的組合注解,可以替代這兩個(gè)注解

4、切面(AOP)相關(guān)注解

Spring支持AspectJ的注解式切面編程。

@Aspect 聲明一個(gè)切面(類(lèi)上)

使用@After、@Before、@Around定義建言(advice),可直接將攔截規(guī)則(切點(diǎn))作為參數(shù)。

@After 在方法執(zhí)行之后執(zhí)行(方法上)

@Before 在方法執(zhí)行之前執(zhí)行(方法上)

@Around 在方法執(zhí)行之前與之后執(zhí)行(方法上)

@PointCut 聲明切點(diǎn)

在java配置類(lèi)中使用@EnableAspectJAutoProxy注解開(kāi)啟Spring對(duì)AspectJ代理的支持(類(lèi)上)

5、@Bean的屬性支持

@Scope 設(shè)置Spring容器如何新建Bean實(shí)例(方法上,得有@Bean)

其設(shè)置類(lèi)型包括:

Singleton (單例,一個(gè)Spring容器中只有一個(gè)bean實(shí)例,默認(rèn)模式),

Protetype (每次調(diào)用新建一個(gè)bean),

Request (web項(xiàng)目中,給每個(gè)http request新建一個(gè)bean),

Session (web項(xiàng)目中,給每個(gè)http session新建一個(gè)bean),

GlobalSession(給每一個(gè) global http session新建一個(gè)Bean實(shí)例)

@StepScope 在Spring Batch中還有涉及

@PostConstruct 由JSR-250提供,在構(gòu)造函數(shù)執(zhí)行完之后執(zhí)行,等價(jià)于xml配置文件中bean的initMethod

@PreDestory 由JSR-250提供,在Bean銷(xiāo)毀之前執(zhí)行,等價(jià)于xml配置文件中bean的destroyMethod

6、@Value注解

@Value 為屬性注入值(屬性上)

支持如下方式的注入:

》注入普通字符

》注入操作系統(tǒng)屬性

》注入表達(dá)式結(jié)果

》注入其它bean屬性

》注入文件資源

》注入網(wǎng)站資源

》注入配置文件

注入配置使用方法:

① 編寫(xiě)配置文件(test.properties)

book.name=《三體》

② @PropertySource 加載配置文件(類(lèi)上)

③ 還需配置一個(gè)PropertySourcesPlaceholderConfigurer的bean。

7、環(huán)境切換

@Profile 通過(guò)設(shè)定Environment的ActiveProfiles來(lái)設(shè)定當(dāng)前context需要使用的配置環(huán)境。(類(lèi)或方法上)

@Conditional Spring4中可以使用此注解定義條件話的bean,通過(guò)實(shí)現(xiàn)Condition接口,并重寫(xiě)matches方法,從而決定該bean是否被實(shí)例化。(方法上)

8、異步相關(guān)

@EnableAsync 配置類(lèi)中,通過(guò)此注解開(kāi)啟對(duì)異步任務(wù)的支持,敘事性AsyncConfigurer接口(類(lèi)上)

@Async 在實(shí)際執(zhí)行的bean方法使用該注解來(lái)申明其是一個(gè)異步任務(wù)(方法上或類(lèi)上所有的方法都將異步,需要@EnableAsync開(kāi)啟異步任務(wù))

9、定時(shí)任務(wù)相關(guān)

@EnableScheduling 在配置類(lèi)上使用,開(kāi)啟計(jì)劃任務(wù)的支持(類(lèi)上)

@Scheduled 來(lái)申明這是一個(gè)任務(wù),包括cron,fixDelay,fixRate等類(lèi)型(方法上,需先開(kāi)啟計(jì)劃任務(wù)的支持)

10、@Enable*注解說(shuō)明

這些注解主要用來(lái)開(kāi)啟對(duì)xxx的支持。

@EnableAspectJAutoProxy 開(kāi)啟對(duì)AspectJ自動(dòng)代理的支持

@EnableAsync 開(kāi)啟異步方法的支持

@EnableScheduling 開(kāi)啟計(jì)劃任務(wù)的支持

@EnableWebMvc 開(kāi)啟Web MVC的配置支持

@EnableConfigurationProperties 開(kāi)啟對(duì)@ConfigurationProperties注解配置Bean的支持

@EnableJpaRepositories 開(kāi)啟對(duì)SpringData JPA Repository的支持

@EnableTransactionManagement 開(kāi)啟注解式事務(wù)的支持

@EnableTransactionManagement 開(kāi)啟注解式事務(wù)的支持

@EnableCaching 開(kāi)啟注解式的緩存支持

11、測(cè)試相關(guān)注解

@RunWith 運(yùn)行器,Spring中通常用于對(duì)JUnit的支持

@ContextConfiguration 用來(lái)加載配置ApplicationContext,其中classes屬性用來(lái)加載配置類(lèi)

SpringMVC部分

@EnableWebMvc 在配置類(lèi)中開(kāi)啟Web MVC的配置支持,如一些ViewResolver或者M(jìn)essageConverter等,若無(wú)此句,重寫(xiě)WebMvcConfigurerAdapter方法(用于對(duì)SpringMVC的配置)。

@Controller 聲明該類(lèi)為SpringMVC中的Controller

@RequestMapping 用于映射Web請(qǐng)求,包括訪問(wèn)路徑和參數(shù)(類(lèi)或方法上)

@ResponseBody 支持將返回值放在response內(nèi),而不是一個(gè)頁(yè)面,通常用戶返回json數(shù)據(jù)(返回值旁或方法上)

@RequestBody 允許request的參數(shù)在request體中,而不是在直接連接在地址后面。(放在參數(shù)前)

@PathVariable 用于接收路徑參數(shù),比如@RequestMapping(“/hello/{name}”)申明的路徑,將注解放在參數(shù)中前,即可獲取該值,通常作為Restful的接口實(shí)現(xiàn)方法。

@RestController 該注解為一個(gè)組合注解,相當(dāng)于@Controller和@ResponseBody的組合,注解在類(lèi)上,意味著,該Controller的所有方法都默認(rèn)加上了@ResponseBody。

@ControllerAdvice 通過(guò)該注解,我們可以將對(duì)于控制器的全局配置放置在同一個(gè)位置,注解了@Controller的類(lèi)的方法可使用@ExceptionHandler、@InitBinder、@ModelAttribute注解到方法上,

這對(duì)所有注解了 @RequestMapping的控制器內(nèi)的方法有效。

@ExceptionHandler 用于全局處理控制器里的異常

@InitBinder 用來(lái)設(shè)置WebDataBinder,WebDataBinder用來(lái)自動(dòng)綁定前臺(tái)請(qǐng)求參數(shù)到Model中。

@ModelAttribute 本來(lái)的作用是綁定鍵值對(duì)到Model里,在@ControllerAdvice中是讓全局的@RequestMapping都能獲得在此處設(shè)置的鍵值對(duì)。

責(zé)任編輯:龐桂玉 來(lái)源: java版web項(xiàng)目
相關(guān)推薦

2011-05-12 13:00:10

Web開(kāi)發(fā)者

2015-09-29 09:51:09

移動(dòng)游戲開(kāi)發(fā)技巧

2025-10-13 01:50:00

2018-07-02 10:15:11

Java程序員注解

2013-09-02 14:56:02

開(kāi)發(fā)者工具前段工具后端工具

2025-03-11 11:00:00

后端前端開(kāi)發(fā)

2011-02-21 09:37:53

Web開(kāi)發(fā) Firef

2025-01-23 13:58:17

2012-03-28 15:05:34

應(yīng)用開(kāi)發(fā)移動(dòng)應(yīng)用

2022-04-26 18:33:02

JavaScript技巧代碼

2022-10-25 18:46:36

JavaScript

2010-08-12 14:13:01

Flex開(kāi)發(fā)者

2014-12-15 10:25:21

移動(dòng)開(kāi)發(fā)像素設(shè)計(jì)

2019-07-18 10:14:32

前端Javascript圖表庫(kù)

2025-09-01 01:25:00

SpringMVC注解

2015-05-12 14:05:49

谷歌開(kāi)發(fā)者

2015-06-04 13:15:11

獨(dú)立開(kāi)發(fā)者

2017-01-03 08:48:33

移動(dòng)應(yīng)用iOS開(kāi)發(fā)開(kāi)發(fā)

2025-07-24 06:34:46

SpringBoot代碼開(kāi)發(fā)

2019-10-22 15:27:58

前端開(kāi)發(fā)技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

日韩美女在线视频| 国产欧美日韩专区发布| 国产中文在线视频| 成人av电影在线播放| 成人在线观看毛片| 国产福利一区在线观看| 国产成人艳妇aa视频在线| 国产精品一级黄| 国产人妻777人伦精品hd| 99re热视频这里只精品| 26uuu亚洲| 黄色一级片在线观看| 欧美一区二视频| 国产三级在线免费| 视频国产一区二区三区| 日韩在线中文字| 都市激情亚洲欧美| 欧美中文字幕精品| 日本久久免费| 超碰在线亚洲| yw视频在线观看| 久久久午夜精品理论片中文字幕| 51国产成人精品午夜福中文下载| 一本一道久久综合狠狠老| 成人高h视频在线| 青娱乐精品视频| 成人性视频欧美一区二区三区| 福利二区91精品bt7086| 9191国产精品| 午夜不卡一区| 91免费视频网站| 成人小视频在线观看| eeuss影院www在线播放| 高清亚洲成在人网站天堂| 国产精品自在欧美一区| 男人av在线| 亚洲韩国日本中文字幕| 最新真实国产在线视频| 欧美性色黄大片| 久久久久97| 二区三区在线播放| 在线视频一区观看| 欧美成人手机在线| 欧美视频在线观看免费网址| 亚洲视频大全| 国产精品麻豆成人av电影艾秋| 久久国产这里只有精品| 国产精品夜夜夜一区二区三区尤| 亚洲娇小xxxx欧美娇小| 亚洲猫色日本管| 久久视频在线| 97超碰国产一区二区三区| 国产主播自拍av| 亚洲r级在线观看| 亚洲欧美激情精品一区二区| 亚洲少妇中出一区| 国产精品美女久久久浪潮软件| 精品三区视频| 国产专区在线播放| 尤物国产在线观看| 美女黄色片网站| 成人信息集中地欧美| 亚洲免费视频在线观看| 国产国产精品| av黄色免费在线| 欧美久久精品一级黑人c片| 亚洲精品午夜久久久| 99精品99| 久久爱www.| 美女免费久久| 日本久久精品视频| 一区二区三区免费在线观看| 亚洲精品中文字幕乱码| 九义人在线观看完整免费版电视剧| 久久久久一区二区三区| 中文精品99久久国产香蕉| 亚洲综合清纯丝袜自拍| 国产乱码精品| 精品中文在线| 成人av一区| www.激情网| 国产欧美久久久久久| 欧美成人激情免费网| 中文字幕乱码久久午夜不卡| 国产精品久久久久毛片大屁完整版| 性感美女一区二区在线观看| 日本中文字幕电影| 人人妻人人做人人爽| 91精品久久久久久蜜桃| 久久夜色精品国产| 欧美嫩在线观看| 1区2区3区欧美| 成人综合婷婷国产精品久久免费| 手机在线电影一区| 欧美区一区二区| www在线观看播放免费视频日本| av免费看大片| 无码人妻丰满熟妇区毛片18| 精品免费国产| 91精品在线观看视频| 色综合老司机第九色激情| 欧美精品一区二区三区在线播放 | 国产一区三区在线播放| 欧美夫妻性视频| 日韩高清不卡一区| 日韩伦理视频| 国产日产一区| 牛牛影视一区二区三区免费看| ****av在线网毛片| av黄在线观看| 福利在线视频网站| 欧美黑人猛交的在线视频| 一级二级在线观看| 你懂的在线播放| 国产最新视频在线| 国产三级在线免费观看| 另类av导航| 国产午夜在线视频| 免费网站免费进入在线| 二区在线观看| 精品一性一色一乱农村| 午夜影院一区| 欧美日韩国产一区二区在线观看| 99tv成人影院| 亚洲综合小说图片| 国产精品多人| 久久草av在线| 国产片一区二区| 天天影视涩香欲综合网| 欧美日本一区二区三区四区| 精品美女一区二区三区| 正在播放欧美一区| 欧美在线观看一区二区三区| 成人日韩在线电影| 色之综合天天综合色天天棕色| 欧美这里只有精品| 男人的天堂网av| 欧美videos极品另类| 成人在线视频观看| 一呦二呦三呦国产精品| 一本一道久久a久久精品蜜桃| 久久精品国产一区二区三区免费看| 不卡一二三区首页| 欧美性生交大片免费| 亚洲成人国产精品| 国产激情999| 乱妇乱女熟妇熟女网站| 亚洲私人影吧| 久久免费资源| 日韩午夜在线电影| 亚洲视频一区二区免费在线观看| 日韩一区二区三区在线观看| 欧美制服第一页| 特级毛片在线免费观看| 在线视频你懂| 天天综合91| 国产91porn| 麻豆亚洲一区| 无线免费在线视频| 都市激情亚洲欧美| 国产综合一区二区| 色哟哟一区二区在线观看| 久久久亚洲成人| 成人黄色av片| 成人在线黄色电影| 中文精品视频| 在线免费观看视频一区| 欧美综合第一页| 色综合色综合色综合色综合| 黄瓜视频成人app免费| 亚洲免费婷婷| 欧美一区二区三区男人的天堂| 国产精品最新在线观看| 91黄色小网站| 国内精品视频| 久久久久久久久久久久久久久99| 亚洲男子天堂网| 男女裸体影院高潮| 在线观看福利电影| 国产精品一级片| 亚洲欧美综合区自拍另类| 免费观看黄色大片| 91在线三级| 99久久er热在这里只有精品66| 亚洲精品99久久久久| 亚洲小视频在线播放| 日韩制服一区| 国产精品午夜免费| 97人洗澡人人免费公开视频碰碰碰| 国产三级三级三级看三级| 国产视频一区二| 亚洲激情自拍视频| 粉嫩高清一区二区三区精品视频| 怡红院在线播放| 不卡的av网站| 国产精彩精品视频| 超碰个人在线| 91丨porny丨国产| 91久久久精品| 成人国产二区|