前言
以前总是利用start.spring.io创建spring-boot工程来使用 ,只知其然不知其所以然
今天从0搭建一个基于mvnen的spring-boot的helloworld项目
创建工程与安装依赖
- 利用eclipse或IDEA等IDE创建一个Mvnen工程 ,一路NEXT即可
此时的目录结构如下 :
.
├── mymvn.iml
├── pom.xml
└── src
├── main
│ ├── java
│ └── resources
└── test
└── java
-
修改pom.xml,安装spring-boot
-
首先在pom.xml中加入parent ,继承spring的主程序和一些依赖
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>1.5.10.RELEASE</version> </parent>
-
然后的加入spring-boot-web程序依赖 ,使成为web项目
<dependencies> <!-- Spring-boot框架主程序 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.3.14.RELEASE</version> </dependency> </dependencies>
-
加入tomcat的组件的依赖 ,可以进行自动编译并运行
<dependencies> <!-- Spring-boot 的web主程序 ,包含tomcat等 此依赖可以不安装 ,但是Spring-boot启动后不会开启tomcat监听 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.10.RELEASE</version> </dependency> </dependencies>
-
- 此时的pom.xml全貌
<?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>test</groupId>
<artifactId>mymvn</artifactId>
<version>1.0-SNAPSHOT</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>1.5.10.RELEASE</version>
</parent>
<dependencies>
<!-- Spring-boot框架主程序 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.3.14.RELEASE</version>
</dependency>
<!--
Spring-boot 的web主程序 ,包含tomcat等
此依赖可以不安装 ,但是Spring-boot启动后不会开启tomcat监听
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>1.5.10.RELEASE</version>
</dependency>
</dependencies>
</project>
- 这时候完整的spring-boot依赖就配置完了 ,使用IDE安装所有依赖即可
创建Spring-boot入口类
在/src/main/java创建一个名为app的包 ,然后在app中创建一个类文件Bootstrap.java ,该文件就是启动文件
写入以下内容 :
package app;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
/**
* 自动扫描所与包类
* 如果参数 basePackages = "包名" ,那么就只扫描这个包内的类
* 不参数则是扫描所有的
**/
@ComponentScan
// 声明该类是工程入口类
@SpringBootApplication
public class Bootstrap {
// 入口方法
public static void main(String args[]){
SpringApplication.run(Bootstrap.class ,args);
}
}
Hello World
在app包中创建一个名为controllers的包 ,并在包里创建一个名为HelloController.java的文件
在文件中写入 :
package app.controllers;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 声明本类为Restful风格
* 所有的方法的返回值都会被处理成JSON
*/
@RestController
public class HelloController {
// 简单的理解为路由
@RequestMapping("/")
public String index() {
return "Hello World";
}
}
启动
在入口类中 ,右键点击 Run .... 即可 .eclipse是右键 run java Aplication
此时我们看到tomcat启动到了8080端口 .至此spring-boot就启动完成了
访问127.0.0.1
此时的目录结构
.
├── mymvn.iml
├── pom.xml
├── src
│ ├── main
│ │ ├── java
│ │ │ └── app
│ │ │ ├── Bootstrap.java
│ │ │ └── controllers
│ │ │ └── HelloController.java
│ │ └── resources
│ └── test
│ └── java
└── target
├── classes
│ └── app
│ ├── Bootstrap.class
│ └── controllers
│ └── HelloController.class
└── generated-sources
└── annotations
14 directories, 6 files
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。