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

欢迎一起讨论和学习;

原创不易,转载请注明出处。

转载于:https://www.cnblogs.com/snidget/p/11398235.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/349629.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电脑入门基础教程_ARM入门最好的文章------转载一位资身工程师的入门心得

开始学ARM一团雾水,不知道如何入手.这个介绍的比较全面.本人认为aRM入门最好的文章1. 抓住51开发ARM这几个月来我一直都爬在51的问题&#xff0c;自己都有一点笑自己了&#xff0c;用了4个月的时间&#xff0c;来巩固51的原理和程序&#xff0c;还好我自己算是走过来了&#xf…

项目包装组织

程序包是Java的基本概念&#xff0c;是您开始用该语言编程时偶然发现的第一件事。 作为一个初学者&#xff0c;您可能不太在意软件包的结构&#xff0c;但是随着您成为经验丰富且成熟的软件开发人员&#xff0c;您开始思考可以采取哪些措施来提高其效率。 有几个主要选项需要考…

NOIP模拟测试30「return·one·magic」

magic 题解 首先原式指数肯定会爆$long$ $long$ 首先根据欧拉定理我们可以将原式换成$N^{\sum\limits_{i1}^{i<N} [gcd(i,N)1] C_{G}^{i} \%phi(p)}\%p$ 根据欧拉函数是积性的得出$phi(54184622)phi(2)*phi(27092311)$ 然后$phi(27092311)27092310$ $phi(2)1$所以$phi(541…

python作用域的理解-理解Python的UnboundLocalError(Python的作用域)

今天写代码碰到一个百思不得解为什么会出错的代码&#xff0c;简化如下&#xff1a; 1 2 3 4 5 6 7 x10 deffunc(): ifsomething_true(): x20 print(x) func() 意图很明显&#xff0c;首先我定义了一个全局的x&#xff0c;在函数中&#xff0c;如果有特殊需要&#xff0c;就重新…

threadlocals_如何使用ThreadLocals射击自己

threadlocals它将很好地启动。 像大多数故事一样。 您会发现一个新概念&#xff0c;并对其功能感到惊讶。 然后突然装备了这把新锤子&#xff0c;一切开始看起来像钉子。 根据我们过去几个月的经验&#xff0c; java.lang.ThreadLocal真是一锤定音。 我想这全都归结为ThreadLo…

ASP.NET Core Web API

1.简单介绍 ASP.NET Core Web API 是 ASP.NET Core MVC 的一个功能。ASP.NET Core MVC 包含了对 Web API 的支持。可以构建多种客户端的 HTTP 服务。ASP.NET Core Web API可用于在 .NET Core 上构建 RESTful 应用程序。 框架包含对 HTTP 内容协商的支持&#xff0c;内置支持以 …

win8配置_《FIFA 20》PC配置公布 最低仅需i3+GTX660

EA公布了新作《FIFA 20》的PC配置需求&#xff0c;玩家最低仅需 i3-2100 GTX 660 显卡即可进行游戏&#xff0c;推荐配置则为 i3-6300T GTX 670 显卡&#xff0c;考虑到本作的逼真画面效果&#xff0c;这配置可以说是非常亲民&#xff0c;另外硬盘空间需要大约 50 GB。最低配…

Thymeleaf + Spring中的验证

总览 我们将要讨论的重要主题涉及空值&#xff0c;空字符串和输入验证&#xff0c;因此我们不会在数据库中输入无效数据。 在处理空值时&#xff0c;我们使用了Java 1.8中引入的java.util.Optional 。 0 – Spring Boot Thymeleaf示例表单验证应用程序 我们正在为一所大学构…

技术管理规划-设定团队的职能

背景 职责 团队是干什么的 初步自查团队 1.公司为什么给我团队&#xff1f;希望我产出什么&#xff1f;完成对除了c端健康领域探索的研发任务&#xff0c;产出技术类产品 2.团队存在的独特价值是什么&#xff1f;研发过lx健康这款基础app,研发能力强&#xff0c;熟悉硬件相关技…

开发转测试没人要_前端开发,测试,后端,该如何选择?

一般来说前端会比后端简单一些的&#xff0c;初学者或者转行可能考虑前端多一点&#xff0c;但是后端开发的薪水又比前端高一些&#xff0c;就是比较枯燥。前端开发我目前一直在自学前端&#xff0c;从网上找资料&#xff0c;然后听课&#xff0c;只要是对编程有兴趣&#xff0…

技术管理规划-如何设定团队的目标

团队管理规划有4个互相关联的要素&#xff1a; 职能目标团队路径在未来的3个月&#xff0c;6个月&#xff0c;1年&#xff0c;2年&#xff0c;3年&#xff0c;5年中&#xff0c;你希望带着你的团队抵达一个什么样的目的地&#xff0c;也就是团队的目标。 更加清楚目标意味着什么…

a8处理器相当于骁龙几_天玑820相当于骁龙什么处理器?天梯图秒懂联发科天玑820性能排名...

5月18日&#xff0c;联发科发布了全新 天玑820处理器&#xff0c;号称目前最强中端芯&#xff0c;受到不少网友关注。联发科近年来在手机CPU市场沉寂多年&#xff0c;今年异常给力&#xff0c;先后发布了天玑1000/L、天玑800等多款处理器&#xff0c;采用了全新的命名方式&…

hibernate 继承_Hibernate继承:每个类层次结构的表

hibernate 继承在本教程中&#xff0c;我们将了解如何在hibernate中实现继承。可以通过3种方式在hibernate中实现继承。在本文中&#xff0c;我们将看到其中一种&#xff0c;即每个类层次结构一个表。 Hibernate中的继承&#xff1a; Java是面向对象的语言&#xff0c;继承是J…

vue - cli 脚手架安装

一、 node安装 1&#xff09;如果不确定自己是否安装了node,可以在命令行工具内执行&#xff1a; node -v &#xff08;检查一下 版本&#xff09;&#xff1b; 2&#xff09;如果 执行结果显示&#xff1a; xx 不是内部命令&#xff0c;说明你还没有安装node , node 安装地址…

python人工智能_人工智能福利丨Python核心语法实战

Python已正式跻身成熟语言行列&#xff0c;成为整个互联网的基础性语言之一&#xff0c;并以肉眼可见的速度&#xff0c;在全球攻城略地&#xff1a;——牢牢占据TIOBE世界编程语言排行榜第四名&#xff0c;且保持上升趋势——国家级人工智能四大平台确立——正式纳入全国计算机…

.NET Core 单元测试

应用程序测试的类型很多&#xff0c;包括集成测试&#xff0c;Web 测试&#xff0c;负载测试等。在最底层的是单元测试&#xff0c;此测试可以测试单个软件组件或方法。单元测试一般只测试开发人员的代码&#xff0c;不应该测试基础结构普、问题&#xff0c;如数据库&#xff0…

是什么原因导致OutOfMemoryError?

发生以下情况之一时&#xff0c;可能会引发OutOfMemoryError &#xff1a; JVM耗尽了本机内存 Java堆内存不足 PermGen或Metaspace内存不足 JVM花太多时间试图收集垃圾 通常可以从错误消息中OutOfMemoryError出OutOfMemoryError的根本原因。 让我们研究每种情况的细节。 …

win10电脑开机密码忘了怎么办_Mac电脑忘记开机密码怎么办?Mac开机密码快速恢复方法...

Mac忘记开机密码怎么办&#xff1f;虽然小编觉得大多数人应该都不会Mac忘记开机密码&#xff0c;但是如果真的有人忘记了怎么办呢&#xff1f;小编这里教你们一种方法&#xff0c;可以帮你1分钟快速恢复Mac电脑忘记开机密码&#xff0c;感兴趣的朋友快跟着小编一起来看看吧&…

技术管理规划-如何规划团队的架构

管理规划的4个要素 1.职能【清楚自己团队的基本职责和使命】 2.目标【为团队设定清晰的目标】 3.团队【团队的架构规划】 4.路径 团队目标 根据团队目标去梳理团队 团队目标&#xff1a; 某个时间节点&#xff0c;团队发展成什么状态。 要点说明规模实际人数和预算人数分工团队…

win10家庭版调出组策略_利用powershell为win10家庭版安装组策略

虽然win10家庭版阉割了组策略管理器&#xff0c;但至少到1607版本时还可以用cmd脚本安装它。可是随后win10更新了几个大版本&#xff0c;不知为何&#xff0c;cmd控制台常常会有诡异的Bug&#xff0c;导致无法用老办法安装组策略管理器。为了彻底解决这个问题&#xff0c;不妨另…