天天看點

springboot使用

spring boot建議使用maven或gradle,本文以maven為例。

首先建立一個一般的maven項目,有一個pom.xml和基本的<code>src/main/java</code>結構。

增加父pom比較簡單,而且<code>spring-boot-starter-parent</code>包含了大量配置好的依賴管理,在自己項目添加這些依賴的時候不需要寫<code>&lt;version&gt;</code>版本号。

使用父pom雖然簡單,但是有些情況我們已經有父pom,不能直接增加<code>&lt;parent&gt;</code>時,可以通過如下方式:

上面pom.xml雖然沒有出現這個屬性,這裡要特别提醒。

spring預設使用jdk1.6,如果你想使用jdk1.8,你需要在<code>pom.xml</code>的屬性裡面添加<code>java.version</code>,如下:

spring通過添加<code>spring-boot-starter-*</code>這樣的依賴就能支援具體的某個功能。

我們這個示例最終是要實作web功能,是以添加的是這個依賴。

該插件支援多種功能,常用的有兩種,第一種是打包項目為可執行的jar包。

在項目根目錄下執行<code>mvn package</code>将會生成一個可執行的jar包,jar包中包含了所有依賴的jar包,隻需要這一個jar包就可以運作程式,使用起來很友善。該指令執行後還會保留一個<code>xxx.jar.original</code>的jar包,包含了項目中單獨的部分。

生成這個可執行的jar包後,在指令行執行<code>java -jar xxxx.jar</code>即可啟動項目。

另外一個指令就是<code>mvn spring-boot:run</code>,可以直接使用<code>tomcat</code>(預設)啟動項目。

在我們開發過程中,我們需要經常修改,為了避免重複啟動項目,我們可以啟用熱部署。

<code>spring-loaded</code>項目提供了強大的熱部署功能,添加/删除/修改 方法/字段/接口/枚舉 等代碼的時候都可以熱部署,速度很快,很友善。

想在<code>spring boot</code>中使用該功能非常簡單,就是在<code>spring-boot-maven-plugin</code>插件下面添加依賴:

添加以後,通過<code>mvn spring-boot:run</code>啟動就支援熱部署了。

注意:使用熱部署的時候,需要ide編譯類後才能生效,你可以打開自動編譯功能,這樣在你儲存修改的時候,類就自動重新加載了。

我們建立一個<code>application</code>類:

spring boot建議将我們<code>main</code>方法所在的這個主要的配置類配置在根包名下。

類似如下結構:

在<code>application.java</code>中有<code>main</code>方法。

因為預設和包有關的注解,預設包名都是目前類所在的包,例如<code>@componentscan, @entityscan, @springbootapplication</code>注解。

因為我們例子是寫一個web應用,是以寫的這個注解,這個注解相當于同時添加<code>@controller</code>和<code>@responsebody</code>注解。

spring boot建議隻有一個帶有該注解的類。

boot就不會建立預設的<code>datasource</code>。

如果你不想讓spring boot自動建立,你可以配置注解的<code>exclude</code>屬性,例如:

由于大量項目都會在主要的配置類上添加<code>@configuration,@enableautoconfiguration,@componentscan</code>三個注解。

是以spring boot提供了<code>@springbootapplication</code>注解,該注解可以替代上面三個注解(使用spring注解繼承實作)。

這些方法都添加了<code>@requestmapping("xxx")</code>,這個注解起到路由的作用。

啟動spring boot項目最簡單的方法就是執行下面的方法:

該方法傳回一個<code>applicationcontext</code>對象,使用注解的時候傳回的具體類型是<code>annotationconfigapplicationcontext</code>或<code>annotationconfigembeddedwebapplicationcontext</code>,當支援web的時候是第二個。

除了上面這種方法外,還可以用下面的方法:

<code>springapplication</code>包含了一些其他可以配置的方法,如果你想做一些配置,可以用這種方式。

除了上面這種直接的方法外,還可以使用<code>springapplicationbuilder</code>:

當使用springmvc的時候由于需要使用子容器,就需要用到<code>springapplicationbuilder</code>,該類有一個<code>child(xxx...)</code>方法可以添加子容器。

在ide中直接直接執行main方法,然後通路<code>http://localhost:8080</code>即可。

另外還可以用上面提到的<code>mvn</code>,可以打包為可執行jar包,然後執行<code>java -jar xxx.jar</code>。

或者執行<code>mvn spring-boot:run</code>運作項目。

項目啟動後輸出如下日志:

關于配置,application.properties,官方文檔1.4.3   http://docs.spring.io/spring-boot/docs/1.4.3.release/reference/htmlsingle/

提供已份 完整 springboot+mybatis+springmvc配置項目源碼 http://download.csdn.net/detail/u013378306/9743585