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