## **使用spring boot有什么好处**
其实就是简单、快速、方便!平时如果我们需要搭建一个spring web项目的时候需要怎么做呢?
1)配置web.xml,加载spring和spring mvc
2)配置数据库连接、配置spring事务
3)配置加载配置文件的读取,开启注解
4)配置日志文件
…
配置完成之后部署tomcat 调试
现在非常流行微服务,如果我这个项目仅仅只是需要发送一个邮件,如果我的项目仅仅是生产一个积分;我都需要这样折腾一遍!
## **快速入门**
### maven构建项目
1、访问 [http://start.spring.io/](http://start.spring.io/)
2、选择构建工具Maven Project、Spring Boot版本以及一些工程基本信息,点击“ Switch to the full version. ”,可以看到更多的配置
3、点击Generate Project下载项目压缩包
4、解压后,使用eclipse,Import -> Existing Maven Projects -> Next ->选择解压后的文件夹-> Finsh,OK done!
### 项目结构介绍
Spring Boot的基础结构共三个文件:
* src/main/java 程序开发以及主程序入口
* src/main/resources 配置文件
* src/test/java 测试程序
另外,spingboot建议的目录结果如下:
root package结构:com.example.myproject
```
com
+- example
+- myproject
+- Application.java
|
+- domain
| +- Customer.java
| +- CustomerRepository.java
+- service
| +- CustomerService.java
+- controller
| +- CustomerController.java
```
1. Application.java 建议放到根目录下面,主要用于做一些框架配置
2. domain目录主要用于实体(Entity)与数据访问层(Repository)
3. service 层主要是业务类代码
4. controller 负责页面访问控制
采用默认配置可以省去很多配置,当然也可以根据自己的喜欢来进行更改最后,启动Application main方法,至此一个java项目搭建好了!
### 引入web模块
1、pom.xml中添加支持web的模块:
```
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
```
pom.xml文件中默认有两个模块:
spring-boot-starter :核心模块,包括自动配置支持、日志和YAML;
spring-boot-starter-test :测试模块,包括JUnit、Hamcrest、Mockito。
2、编写controller内容:
```
@RestController
public class HelloWorldController {
@RequestMapping("/hello")
public String index() {
return "Hello World";
}
}
```
@RestController 的意思就是controller里面的方法都以json格式输出,不用再写什么jackjson配置的了!
3、启动主程序,打开浏览器访问[http://localhost:8080/hello](http://localhost:8080/hello),就可以看到效果了!