spring-boot是spring
系列下的致力于帮助开发者快速方便搭建项目的工具,并且便于运行部署,特别适用于微服务架构搭建。
本来想从零开始,但是发现简书已有很多文章,在这里就不赘述了,查看spring-boot专题了解更多内容。
首先说一下使用spring-boot
开始项目的一些注意事项(针对新手):
- 为了方便,请抛弃配置
XML
,真的很冗杂
- 全面支持
annotation
注解和java config
- 用
spring-boot
提供的一系列starter
开始你的项目
spring-boot
只是帮你更好的开始一个项目,而不是一个应用框架
- 请使用
IDEA
开发
为了不与其他文章过于相似,此系列文章一律采用gradle
作为构建工具,gradle参考官网介绍,对于maven
项目,gradle init
可以一键转化为gradle项目(肯定需要修改)。
开始一个web项目
新建文件夹bootmkdir boot
,在boot根目录执行gradle init --type java-library
,修改build.gradle
添加依赖compile 'org.springframework.boot:spring-boot-starter-web'
,新建Application.java
:
1 2 3 4 5 6
|
public class { public static void main(String[] args) throws Exception { SpringApplication.run(Application.class, args); } }
|
写一个简单的controller
1 2 3 4 5 6 7 8 9
|
@Controller public class PublicController {
@RequestMapping("/") @ResponseBody String home() { return "Hello World!"; } }
|
boot
几乎所有配置都在application.properties
里,新建src/main/resources/application.properties,修改端口号server.port=8090
,命令行启动gradle bootRun
查看http://localhost:8090,Hello World!
。
大专栏 1. spring-boot框架初始/>添加其他功能只需要添加对应的starter
然后配置即可,比如通常会用到的一些starter
:
1 2 3 4 5
|
'org.springframework.boot:spring-boot-starter-web' // web项目 'org.springframework.boot:spring-boot-starter-data-jpa' // JPA对应DAO 'org.springframework.boot:spring-boot-starter-security' // 权限管理 'org.springframework.boot:spring-boot-starter-thymeleaf' // view层,替代JSP 'org.springframework.boot:spring-boot-devtools' // 开发工具,热加载
|
最后说一下目录结构,一般而言是这样:
扫描二维码关注公众号,回复:
7549868 查看本文章
1 2 3 4 5 6 7 8 9 10 11 12 13
|
|-- build.gradle |-- src |----|-- main |---------|-- java |--------------|-- com.project |---------------------|-- controller |---------------------|-- service |---------------------|-- repository |---------------------|-- entity |---------|-- resources |--------------|-- application.properties |--------------|-- application-dev.properties |--------------|-- application-pro.properties
|
我推荐这样:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
|-- build.gradle |-- src |----|-- main |---------|-- java |--------------|-- com.project |---------------------|-- user |--------------------------|-- controller |--------------------------|-- service |--------------------------|-- repository |--------------------------|-- entity |---------|-- resources |--------------|-- application.properties |--------------|-- application-dev.properties |--------------|-- application-pro.properties
|
按组件区分,易查看代码,当项目成长到一定程度更加容易拆分。