Hello world

1前言

??作為程序員,每入門一門技術(shù),都是從hello world開始.接下來望浩,就寫個簡單的helloword spring boot項目..

1環(huán)境準備

以下環(huán)境是本人的開發(fā)環(huán)境:

(1)JDK1.8_131

(2)Maven 3.3.9

(3)IDEA 2017.1.3

(4)git 2.7.4

2 小試牛刀之Hello World

 工程項目的github傳送門:(https://github.com/simos-code/springboot-quick-start.git).啟動后,在瀏覽器輸入:

http://localhost:8080/hello,瀏覽器上就出現(xiàn):"hello world".如下圖所示:


請求成功

  通過這個簡單的項目我們可以看到spring boot在大大降低了我們使用spring框架的難度,復雜度.只需要簡單的幾行代碼包各,就可以構(gòu)建一個spring應(yīng)用.沒有任何額外的配置文件.

3庖丁解牛Hello World

  下圖是我們hello world項目的目錄結(jié)構(gòu)圖,麻雀雖小靶庙,五臟俱全.通過分析這個最簡單的demo问畅,我們可以看到spring boot在spring框架的基礎(chǔ)上提供了什么.然后對spring boot原理有個大致的概念,否則很多時候六荒,自己的項目構(gòu)建起來后护姆,業(yè)務(wù)功能也實現(xiàn)了,框架怎么運行沒有了解掏击,真正需要自己去實現(xiàn)一些框架本身沒有提供的功能卵皂,百度找不到相關(guān)例子的時候,就一籌莫展.掌握基本原理砚亭,就可以依樣畫瓢灯变,實現(xiàn)自己想要的功能.

demo項目結(jié)構(gòu)

3.1maven引入依賴

通過下圖來說明在spring boot中如何按需引入各個功能的"starter".

maven配置

從maven的配置中可以看到殴玛,POM文件中有個parent節(jié)點.parent節(jié)點主要包含兩三個信息:groudId(可以被繼承),artifactId(私有),version(可以被繼承).就像我們java的繼承里一樣,parent節(jié)點作為其他"starter"節(jié)點的父節(jié)點添祸,"starter"子節(jié)點繼承parent后也會包含parent節(jié)點的version屬性(ps:生產(chǎn)環(huán)境使用release版本滚粟,這是穩(wěn)定版),這樣整個工程里所有g(shù)roupId為"org.springframework.boot"的"starter"就有相同version.比如上圖中"spring-boot-starter-web"的依賴版本就是通過繼承parent得來的.總之一句話刃泌,可以通過parent節(jié)點統(tǒng)一管理springboot的版本凡壤,避免使用不同版本導致maven依賴沖突.這里的"可以",說明大家也可以直接在各個"starter"依賴里頭添加指定版本,沒有特殊的需求耙替,官方文檔也是推薦使用parent節(jié)點進行統(tǒng)一的版本管理.springboot官方提供的"starter"列表傳送門:starter官方文檔鏈接

3.2 HelloController

接下來我們看看web頁面的"hello world"怎么得到的.下圖是HelloController代碼:


HelloController

使用過spring mvc的小伙伴都知道亚侠,controller是用來處理web請求的.這里用的注解是@RestController而不是@Controller.在springmvc中,單獨使用@Controller時返回的是web頁面俗扇,如果在請求處理方法(加這個注解的方法最終返回http(s) response不是頁面硝烂,而是string數(shù)據(jù))或者controller類(類里面的所有web請求處理方法返回的都是string數(shù)據(jù)而不是頁面)上添加@ResponseBody則是聲明返回給請求的是數(shù)據(jù)而不是頁面.從注解的名字我們就可以知道這個@RestController用來實現(xiàn)restful請求用的,直接給http(s)請求返回string類型的數(shù)據(jù).下面是@RestController的源碼截圖

@RestController

@RestController注解源碼可以看出铜幽,它其實就是組合了注解@Controller@ResponseBody滞谢,簡化了restful的實現(xiàn).@RestController中的request處理方法的返回值我會用這個demo的另一個git分支去講解一下.

3.3QuickStartApplication

接下來我們講一下springboot的啟動入口,先貼斷代碼截圖:


main

從圖上看啥酱,很簡單有木有爹凹!幾行代碼一個spring boot應(yīng)用就啟動了,沒有任何配置文件.看到main函數(shù)入口是不是很熟悉啊镶殷,就是一個普通的java工程項目禾酱,main方法里頭只有一個SpringApplication靜態(tài)方法run調(diào)用.唯一不同的多了個spring boot 的注解@SpringBootApplication,這個注解也是用一篇獨立的博客跟大家說說這個注解背后的原理绘趋,講講run方法.因為篇幅太長颤陶,閱讀起來不太舒服.

4小結(jié)

以上主要配置了一個最最簡單的springboot應(yīng)用,沒有任何配置文件陷遮,沒有多余的注解.后續(xù)文章滓走,會基于這個demo慢慢分析springboot基本原理.讓大家知其然,也知所以然.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末帽馋,一起剝皮案震驚了整個濱河市搅方,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌绽族,老刑警劉巖姨涡,帶你破解...
    沈念sama閱讀 216,324評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異吧慢,居然都是意外死亡涛漂,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來匈仗,“玉大人瓢剿,你說我怎么就攤上這事∮菩” “怎么了间狂?”我有些...
    開封第一講書人閱讀 162,328評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長哗蜈。 經(jīng)常有香客問我前标,道長坠韩,這世上最難降的妖魔是什么距潘? 我笑而不...
    開封第一講書人閱讀 58,147評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮只搁,結(jié)果婚禮上音比,老公的妹妹穿的比我還像新娘。我一直安慰自己氢惋,他們只是感情好洞翩,可當我...
    茶點故事閱讀 67,160評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著焰望,像睡著了一般骚亿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上熊赖,一...
    開封第一講書人閱讀 51,115評論 1 296
  • 那天来屠,我揣著相機與錄音,去河邊找鬼震鹉。 笑死俱笛,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的传趾。 我是一名探鬼主播迎膜,決...
    沈念sama閱讀 40,025評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼浆兰!你這毒婦竟也來了磕仅?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,867評論 0 274
  • 序言:老撾萬榮一對情侶失蹤簸呈,失蹤者是張志新(化名)和其女友劉穎榕订,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝶棋,經(jīng)...
    沈念sama閱讀 45,307評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡卸亮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,528評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了玩裙。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兼贸。...
    茶點故事閱讀 39,688評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡段直,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出溶诞,到底是詐尸還是另有隱情鸯檬,我是刑警寧澤,帶...
    沈念sama閱讀 35,409評論 5 343
  • 正文 年R本政府宣布螺垢,位于F島的核電站喧务,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏枉圃。R本人自食惡果不足惜功茴,卻給世界環(huán)境...
    茶點故事閱讀 41,001評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望孽亲。 院中可真熱鬧坎穿,春花似錦、人聲如沸返劲。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽篮绿。三九已至孵延,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間亲配,已是汗流浹背尘应。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留弃榨,地道東北人菩收。 一個月前我還...
    沈念sama閱讀 47,685評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像鲸睛,于是被迫代替她去往敵國和親娜饵。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,573評論 2 353

推薦閱讀更多精彩內(nèi)容