使用Maven构建项目
通过SPRING INITIALIZR工具产生基础项目 访问: http://start.spring.io/ 选择构建工具Maven Project、Spring Boot版本1.5.10以及一些工程基本信息,可参考下图所示
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNvwVZ2x2bzNXak9CX90TQNNkRrFlQKBTSvwFbslmZvwFMwQzLcVmepNHdu9mZvwFVywUNMZTY18CX052bm9CX9EERNlXTU5EeVpXTmZEWjZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39TMzEjMyczMxEzMxMDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
1.点击Generate Project下载项目压缩包 2.解压项目包,并用IDE以Maven项目导入,以IntelliJ IDEA 14为例: 3.菜单中选择File–>New–>Project from Existing Sources… 4.选择解压后的项目文件夹,点击OK 5.点击Import project from external model并选择Maven,点击Next到底为止。 6.若你的环境有多个版本的JDK,注意到选择Java SDK的时候请选择Java 7以上的版本 注意:
项目结构解析
通过上面步骤完成了基础项目的创建,如上图所示,Spring Boot的基础结构共三个文件(具体路径根据用户生成项目时填写的Group所有差异): src/main/java 下的程序入口:Demo2Application src/main/resources 下的配置文件: application.properties src/test/ 下的测试入口:Demo2ApplicationTests
引入Web模块
当前的 pom.xml内容如下,仅引入了两个模块: spring-boot-starter:核心模块,包括自动配置支持、日志和YAML spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito < dependencies > < dependency > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter </ artifactId > </ dependency > < dependency > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-test </ artifactId > < scope > test </ scope > </ dependency > </ dependencies > 引入Web模块,需添加spring-boot-starter-web模块: < dependency > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-web </ artifactId > </ dependency >
注意:生成的项目还是需要更改点东西:
1.启动类 Demo2Application 必须在根目录下,也就是com.test2目录下(和maven配置文件中的 < groupId > com.test2 </ groupId >一致 ); 2.默认访问地址为 http://localhost:8080 ,可以通过配置文件 \src\main\resources下的 application.yml 更改,如下:
编写HelloWorld服务
创建package命名为com\test2\controller(根据实际情况修改) 创建 UserController类,内容如下 @Controller public class UserController { @RequestMapping ( "/hello" ) public @ResponseBody String index(){ return "hello world" ; } } 启动主程序,打开浏览器访问 http://127.0.0.1:8020/hello,可以看到页面输出 Hello World
至此已完成目标,通过Maven构建了一个空白Spring Boot项目,再通过引入web模块实现了一个简单的请求处理。