SpringBoot學習<一>——快速搭建SpringBoot
這是我的第一篇博客,博客記錄我以後的學習,包括一些總結之類的東西,當然,這些記錄是針對於與我個人而言的,可能有些地方會有不好的,或者出現錯誤,歡迎大家來指正(如果有人看的話)廢話不多說。進入正題:SpringBoot
當我在學習SSM框架的時候,先不談Spring的一些核心開年,比如DI ,IOC,AOP等等,只是剛開始它的那些配置就讓我覺得很頭痛,在網上看了很多配置,但是很雜,而我自己在看了這些很雜的配置後,自己慢慢總結了配置,但也花了不少時間才真正的去弄懂它,不過這已經讓我這個對設計思想一無所知的菜鳥來說, 我還不如直接new一個對象呢,雖然知道這種想法是很蠢,卻足以說明我對Spring這些配置的頭痛了,更不要說還要去整合mybaits的配置。顯然,我這種菜鳥都能考慮到這點,Pivotal公司不可能考慮不到,所以出現了一種新的東西,SpringBoot,這對於我來說,簡直就是Spring,當然,SpringBoot不是一種新的技術,只是一種自動整合了很多在開發中需要的配置,讓我們這種菜鳥再也不要去為這些配置去煩心了(可能僅僅只是我)。
Spring官方提供SpringBoot的Eclipse插件去開發,不過,本人因為有一次使用Spring的插件覺得麻煩,就一直不想用著東西,所以還是用Eclipse原生的東西去學習。那麽,我們開始快速的搭建一個SpringBoot的demo吧
首先,先看Maven的POM文件:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.sam.springboot</groupId> <artifactId>springboot-demo-02</artifactId> <version>0.0.1-SNAPSHOT</version> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent --> <!-- springboot項目的父工程包 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> </parent> <!-- 指定UTF-8字符集和java 1.8 的編譯 --> <properties> <project.bulid.sourceEncoding>UTF-8</project.bulid.sourceEncoding> <project.reproting.outputEncoding>UTF-8</project.reproting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web --> <!-- springboot 的web jar包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- springboot 的test jar包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- springboot 的開發工具包 可選 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> </dependencies> <build> <plugins> <!-- springboot的打包插件 --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> <packaging>war</packaging> </project>
官方建議springboot用gradle來管理jar,不過我一直用的Maven,所以就這麽用吧,代碼裏面註釋說的很清楚,我就不在解釋,只是parent的這個可以還有一種方式 ,不過一般都用這種方式,另一種需要了解的可以去網上找。
然後我們建SpringBoot的程序入口
package com.sam.springboot; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplicationpublic class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class,args); } }
這樣就可以啦 ,我們運行的時候像平常運行main方法就行啦。註意註解@SpringBootApplication,這個註解開啟自動配置,有興趣可以點進裏面去看下,它集合了幾個註解,還有一點值得註意的是,這個入口類的位置必須得是在其他類上面的包上,因為他會有一個掃描的註解去掃描其他包。
然後我們在建一個Controller層:
最後我們啟動會出現一個SpringBoot的標誌。然後看日誌後面,基本就啟動成功了,訪問我們的路徑,就OK了,tomcat是嵌入式的,默認端口為8080,容易吧!是不是感覺比以前的配置好的多,不過如果你沒有學spring基礎的東西,那麽springboot報 了錯你也會一無所知。
@RestController @RequestMapping("/demo/") public class DemoController { @Value(value="${sam.secret}") private String secret; @Value(value="${sam.number}") private Integer number; @RequestMapping() public String demo() { return "Hello SpringBoot!"; } @RequestMapping("name") public Map<String, String> sayHello(@RequestParam("name") String name) { Map<String, String> map = new HashMap<>(); map.put("name", name); map.put("value", "Hello "+name); map.put("secret", secret); map.put("number", number.toString()); System.out.println(number); return map; }
SpringBoot學習<一>——快速搭建SpringBoot