Ⅱ.Spring Boot Hello World!


1. 实现功能  

  当浏览器发送hello请求,服务器接受请求并处理,响应Hello World字符串。


2. 创建maven工程并导入Spring Boot相关依赖

  如图所示,项目名要跟模块名一样,不然可能会报错。

设置maven工程指向jdk1.8

记得打钩的地方要一样

记得打钩的地方要一样

  当工程里出现如下图所示时,选Enable Auto-Import,在写入相关依赖后会自动下载依赖包。


3.导入spring boot相关的依赖

  在springboot官网找到依赖并添加到工程里,复制粘贴后要检查会不会因为语法问题报错。

1
2
3
4
5
6
7
8
9
10
11
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

  大概的效果是这样子:

  加入依赖后要看一下应用下面的External Libraries下除看jdk的依赖包以为还有没有其他包,如Maven开头的包,如果没有的话,需要添加阿里的镜像来进行下载,当你添加完后,会发现系统自动进行下载,这个时候需要等待一段时间。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<repositories>
<repository>
<id>maven-ali</id>
<url>http://maven.aliyun.com/nexus/content/repositories/central</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>fail</checksumPolicy>
</snapshots>
</repository>
</repositories>

4.编写主程序

  在main下的java下添加新类,我这里添加为com.myblog.HelloWorldMainAppliction。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package com.myblog;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
* @SpringBootApplication 标注一个主程序类,说明这是一个Spring Boot应用
*/
@SpringBootApplication
public class HelloWorldMainApplication {
public static void main(String[] args) {

// 启动Spring应用
SpringApplication.run(HelloWorldMainApplication.class,args);
}
}

5.编写Controller与Service

  在com.myblog下添加新类,我这里添加为com.myblog.HelloWorldMainAppliction。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
package com.myblog.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {
@ResponseBody
@RequestMapping("/hello") //接受来自浏览器的hello请求
public String hello(){
return "Hello World!"; //返回 Hello World!
}
}

6.测试

  由于spring boot的便捷性,不像ssm中需要整合服务器比较复杂的运行,spring boot在主程序中直接运行main方法就可以了[主函数隔壁的三角符号]。
  运行后从终端中显示的 TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http) 可以知道,端口是8080。
  在浏览器中输入localhost:8080后会出现错误,那是因为没有给输入 所以没有返回,在输入localhost:8080/hello时,便成功运行!


7.部署

  由于spring boot的特性,使用在pom.xml文件中插入下列语句可以使用插件将应用打包为一个可执行的jar包,从而无需在目标服务器安装tomcat环境等繁琐的东西。

1
2
3
4
5
6
7
8
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

  假如IDEA的右边没有附着maven project的视图时,可以在setting->Appearance&Behavio->Appearance中,勾中Show tool window bars,如图所示:

  或者可以直接点击左下角,类似小电脑的图标,也是可以直接呼出右边栏
  选择maven project,准备生成jar包,假如在打开时看到应用报错,指向Plugins文件夹时(Plugins文件夹下有红色波浪线),因为第一次生成的时候Plugins、Dependengcies这些包还没下载,打开应用下的Lifecycle目录,并双击package,会生成jar包,不过第一次生成前会帮你下载好Plugins这些包,如果还是报红,打开本地仓库的文件夹(在上一节IDEA的设置中有提到),类似如果是org.apache.maven.plugins:maven-clean-plugin:2.6.1报错,则找到文件夹\repository\org\apache\maven\plugins\maven-clean-plugin\2.6.1下删除以LastUPdated为结尾的文件,依次类推删除类似其他报错的文件,然后右击应用选择maven重新reimport,如下图所示。这个过程有点久,取决于你的网速。如果重复删除还是会出现lastUpdated的文件,就退出软件,再载入一次。如果实在不行的话,运行maven中生命周期中的clean,这个时候会帮你重新下载一次,不过正常也是下载不了的,你可以按着提醒的错误来找到下载的网址,本地下载jar包后放进去

  生成的jar在target文件夹下。
  可以在终端使用使用java -jar的指令进行调试,效果如下,同样使用测试环节的方法可以看到Hello World!