环境安装
安装 jdk
推荐安装 jkd1.8+, 我使用的是 mac,假设已经安装好 homebrew, 则 jdk 的安装指令是:
brew install java
在 ~/zshrc , 添加两行
export JAVA_HOME= 你的 jdkPath
export PATH=$PATH:$JAVA_HOME;
然后保存;输入 echo ${JAVA_HOME}
回车,显示你的 jdkPath,则 jdk 的路径环境变量配置成功;然后在任意目录下输入 java -version 回车
能够回显出 jdk 的信息,则表示 jdk 安装成功;
## 安装 IDE
推荐安装最智能的 ide,idea,用的都说好,谁用谁知道。
## 安装 maven
推荐安装 maven3 以上;下载之后,解压到硬盘上,把路径配置到 path 中;我使用的 mac 电脑,步骤如下;wget maven 下载地址 tar 包;tar -xvf maven 包 -d 你的解压路径
cd 你的 maven 解压路径
export M2_HOME= 你的 maven 解压路径 /bin
export PATH=$PATH:$M2_HOME;
然后保存。在任意路径输入 mvn -v 回车
能够回显 maven 信息,标识 maven 安装成功;
安装 git
使用 mac 电脑,直接使用 命令安装 git 客户端;brew install git
安装成功之后,输入 git --version 回车
如果可以回显 git 的版本号,则标识安装成功;生成自己的 ssh 公钥私钥对;ssh-keygen -b 4096
余下步骤都直接回车;可以在 ~/.ssh 中生成 rsa 公钥私钥对;在 github,或者 oschina 上注册一个账号,登录进去,把生成的公钥配置进去;即可免密码,拉取和提交代码到远程的 git 仓库;
安装 docker
todo
创建项目
推荐使用 idea 的 Spring Initializr 方法来创建 springboot 项目;选择类型:
配置内容 | 建议选择 | 说明 |
---|---|---|
Type | maven | maven 还是主流 |
java version | 1.8 | jdk8 是主流 |
packaging | jar | 方便运维 |
springboot 版本 | 2.1.7.realease | 最新的稳定版本 |
依赖 | web | 后端主要是接口,接口主要是 web 项目 |
项目名称 | com.carterspring.demo-helloworld | 第一个项目 |
按照表格中的配置要点,最后完成,即完成了一个可以直接运行的项目;
使用 springboot
## 使用 maven 管理依赖
默认创建的项目采用了 springboot 的父 pom,即:
<parent>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
</dependency>
</parent>
工程会自动引入对应的二级依赖;
spring-boot-starter-web 的核心依赖
模块 | 说明 |
---|---|
autoconfigure | 自动配置 |
logging | 日志配置,默认使用的 logback 框架,可以直接看依赖 |
slf4j | 日志门面 |
jackson | json 库 |
tomcat | 内置的 tomcat web 容器 |
## hello world
代码如下:
说明:
关键点 | 说明 |
---|---|
@SpringBootApplication | 标识是一个 springboot 应用,是程序的入口 |
@RestController | 标识本类是一个控制器 |
运行和发布
idea 下调试运行
idea 下的 configuration,已经有一个主类的配置,有很多可以定制的东西;
来个图先:
evernotecid://B4F8A571-9491-40EA-8316-292E2C3A57B2/appyinxiangcom/562396/ENResource/p1405
可以配置主类;
是否打印 debug 信息;
是否隐藏 banner;
选择运行的 profile ;
输入参数等;
运行起来可以通过浏览器进行验证,这个大家都懂,略过;
应用打包
主要使用到了一个 maven 插件,spring-boot-maven-plugin ; 增加了一个打包原语:jar
使用 maven 指令打包:
在源码根路径下,输入指令:
mvn package ;
即可在源码路径下生成 target 目录,里面有
然后运行:
java -jar xxx.jar
推荐使用 jar 的方式进行部署,这也是它的优点所在。
使用传统的 war 包发布,见我的另外一篇文章。todo
docker 下发布
todo
springboot 的配置
推荐采用 yml 的方式进行配置管理
application.yml
采用了结构化的方式,支持嵌套;
也可以使用 springboot 预定义的一些配置参数;
小结
主要介绍 springboot 的开发环境的搭建,工具的安装;
然后使用环境开发了一个简单的 helloworld 程序;
最后讲了一下 spring 的开发调试方法以及部署的方式。
当下微服务流行,使用 docker+k8s 的方式发布应用到云上是必备技能,这块也有就简单实例。
代码路径:
github.com:carterbrother/springbootpractice.git/hello-world
欢迎一起讨论和学习;
原创不易,转载请注明出处,欢迎沟通交流。