[TOC]
1.神马是springBoot ?
由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。<br> springboot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适)。
2. 使用springBoot 优势
简单、快捷、方便! 平常搭建项目的时候我们是怎么做的了?
- 1) 配置web.xml ,加载spring和spring mvc
- 2) 配置数据库连接、配置spring事物
- 3) 配置数据库连接、配置spring事物
- 4)配置日志文件
- … 配置完成之后部署tomcat 调试
- … 现在非常流行微服务,如果我这个项目仅仅只是需要发送一个邮件,如果我的项目仅仅是生产一个积分;我都需要这样折腾一遍! 但是如果使用spring boot呢? 很简单,我仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一个web项目或者是构建一个微服务!
使用sping boot到底有多爽,用下面这幅图来表达
3. 快速入门
说了那么多,手痒痒的很,马上来进入我们的第一个项目
3.1 Maven 工程的搭建(idea)
- 访问http://start.spring.io/
- 选择构建工具Maven Project、Spring Boot版本1.3.6以及一些工程基本信息,点击“Switch to the full version.”java版本选择1.8,可参考下图所示:
- 点击Generate Project下载项目压缩包
- 解压后,使用idea,open -> 选择目录 -> ok-> 等待加载,OK done!
- 项目结构介绍:
如上图所示,SpringBoot 的基础结构就三个文件:
- src/main/java 程序开发及主程序入门
- src/main/resource 配置文件
- src/main/test 测试程序
另外,springBoot 建议的目录结构如下: root package结构: com.example.myproject
com
+- example
+- myproject
+- Application.java
.
+- domain
. +- Customer.java
. +- CustomerRepository.java
.
+- service
. +- CustomerService.java
.
+- controller
. +- CustomerController.java
.
-
- Application.java 建议放到更目录下面,用于做一些框架配置
-
- domain目录主要用于实体(domain)与数据库访问层(Repository)
-
- service层主要是业务类代码
- 4)controller 负责页面控制访问
3.2 引入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,springboot";
}
}
@RestController 的意思是controller里面的方法都以jso格式输出,不用再写神马jackjson 的配置了!
3) 启动主程序,再浏览器访问
4) 引入测试模块
热启动在正常开发项目很常见,springBoot 中的热启动,需要在pom.xml 中加入测试依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
4. 总结:
使用springboot 可以非常方便、快捷搭建项目,使我们不用关心框架之间的兼容性,使用版本等各种问题,我们想要使用任何东西,仅仅添加一个配置就可以,所以使用springboot非常适合构建微服务。