1.開發工具安裝
在eclipse上安裝插件:spring tool suite(簡稱sts)
2.開發實例
1).創建項目
file > new > spring starter project
項目創建完成:
2).生成的源碼解讀
springbootsimpleapplication類:
1
2
3
4
5
6
7
8
9
|
package com.example; import org.springframework.boot.springapplication; import org.springframework.boot.autoconfigure.springbootapplication; @springbootapplication public class springbootsimpleapplication { public static void main(string[] args) { springapplication.run(springbootsimpleapplication. class , args); } } |
pom.xml文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
<?xml version= "1.0" encoding= "utf-8" ?> <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.example</groupid> <artifactid>spring-boot-simple</artifactid> <version> 0.0 . 1 -snapshot</version> <packaging>jar</packaging> <name>spring-boot-simple</name> <description>demo project for spring boot</description> <parent> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-parent</artifactid> <version> 1.5 . 2 .release</version> <relativepath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceencoding>utf- 8 </project.build.sourceencoding> <project.reporting.outputencoding>utf- 8 </project.reporting.outputencoding> <java.version> 1.8 </java.version> </properties> <dependencies> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-web</artifactid> </dependency> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-test</artifactid> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-maven-plugin</artifactid> </plugin> </plugins> </build> </project> |
3).自定義controller層
創建helloworldcontroller.java類:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
package com.example.controller; import java.util.arraylist; import java.util.hashmap; import java.util.list; import java.util.map; import org.springframework.web.bind.annotation.requestmapping; import org.springframework.web.bind.annotation.requestparam; import org.springframework.web.bind.annotation.restcontroller; @restcontroller @requestmapping ( "/hello" ) public class helloworldcontroller { @requestmapping public string hello() { return "hello spring-boot" ; } @requestmapping ( "/info" ) public map<string, string> getinfo( @requestparam string name) { map<string, string> map = new hashmap<string,string>(); map.put( "name" , name); return map; } @requestmapping ( "/list" ) public list<map<string, string>> getlist() { list<map<string, string>> list = new arraylist<map<string, string>>(); map<string, string> map = null ; for ( int i = 1 ; i <= 5 ; i++) { map = new hashmap<>(); map.put( "name-" +i, "spring-boot-" +i); list.add(map); } return list; } } |
然后現在可以直接運行 springbootsampleapplication 的main方法,和執行普通java程序一樣。
然后可以看到spring-boot 內置server容器(默認為tomcat),這一切spring-boot 都幫我們做好了。
在瀏覽器輸入我們3個請求便可看到結果。
輸出:hello spring-boot
輸出:{“name”:”spring-boot”}
輸出:[{“name-1”:”spring-boot-1”},{“name-2”:”spring-boot-2”},{“name-3”:”spring-boot-3”},{“name-4”:”spring-boot-4”},{“name-5”:”spring-boot-5”}]
通過我們的hello實例,相信大家一目了然,可謂spring-boot創建一個項目如此簡單,完全可以在幾分鐘內將服務啟動。
3.注解說明
1).@springbootapplication
很多spring boot開發者總是使用 @configuration , @enableautoconfiguration 和 @componentscan 注解他們的main類。由于這些注解被如此頻繁地一塊使用(特別是你遵循以上最佳實踐時),spring boot提供一個方便的 @springbootapplication 選擇。
該 @springbootapplication 注解等價于以默認屬性使用 @configuration , @enableautoconfiguration 和 @componentscan 。
2).@restcontroller和@requestmapping注解
我們的example類上使用的第一個注解是@restcontroller。被稱為一個構造型(stereotype)注解。它為閱讀代碼的人們提供建議。對于spring,該類扮演了一個特殊角色。在本示例中,我們的類是一個web @controller ,所以當處理進來的web請求時,spring會詢問它。
@requestmapping 注解提供路由信息。它告訴spring任何來自"/"路徑的http請求都應該被映射到 home 方法。
@restcontroller 注解告訴spring以字符串的形式渲染結果,并直接返回給調用者。
注: @restcontroller 和 @requestmapping 注解是spring mvc注解(它們不是spring boot的特定部分)
以上所述是小編給大家介紹的spring boot 之helloworld開發案例,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!
原文鏈接:http://www.cnblogs.com/web424/p/6755929.html