李福春 · 2019年08月23日

springboot实践1

环境安装

安装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项目;

选择类型:
    
配置内容建议选择说明
Typemavenmaven还是主流
java version1.8jdk8是主流
packagingjar方便运维
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日志门面
jacksonjson库
tomcat内置的tomcat web容器

## hello world

代码如下:
file

说明:

关键点说明
@SpringBootApplication标识是一个springboot应用,是程序的入口
@RestController标识本类是一个控制器

运行和发布

idea下调试运行

idea下的configuration,已经有一个主类的配置,有很多可以定制的东西;

来个图先:
evernotecid://B4F8A571-9491-40EA-8316-292E2C3A57B2/appyinxiangcom/562396/ENResource/p1405file

可以配置主类;
是否打印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

欢迎一起讨论和学习;

原创不易,转载请注明出处。
推荐阅读
关注数
0
文章数
53
爱技术,爱编码,爱生活!
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息