构建微服务开发环境8————Hello 微服务
【内容指引】
1.用IDEA打开微服务项目;
2.更新Maven依赖;
3.IntelliJ IDEA JDK配置;
4.修改代码;
5.运行微服务;
6.将代码变更提交到Github。
经过前面的努力,我们已经为Spring Cloud微服务开发准备好了合适的环境。目前我们的操作系统上已安装了JDK、IntelliJ IDEA高效开发工具、Maven项目管理工具、Docker和Mysql等镜像、Github代码版本管理工具Github Desktop。今天我们小试牛刀,来个体验级的综合演练:
一、用IDEA打开微服务项目
上一篇中,我们向Github服务器提交了一个微服务项目“top_cloudev_doc”。现在我们分别演示在macOS系统和windows系统上打开这个项目:
macOS系统下的打开方式
在底部程序坞中点击IDEA图标(安装macOS版IDEA时我们演示过如何将IDEA加入到程序坞):

在欢迎界面点击“Open”:

定位到前面存放的“top_cloudev_doc”微服务项目,即可打开该项目。
windows系统下的打开方式
如下图所示:

在欢迎界面点击“Open”:


二、更新Maven依赖
这是我们安装IDEA和Maven后第一次打开项目,该项目使用Maven管理项目所需要的各种依赖。打开项目后我们会看到IDEA右下角有不断更新的进度,根据网速快慢的差异,这个过程可能会花很长时间,切记不要中断,耐心等待Maven依赖全部更新完成!,否则以后可能有各种找不到依赖的异常,而Maven对于下载了一半未完成的更新不会自动修复!

三、IntelliJ IDEA JDK配置
目前大多数IDE都没有集成JDK环境,IDEA也是一样,在使用IDEA之前首先要安装JDK,并且配置环境变量。与其他IDE不同之处在于,IDEA不会自动匹配系统的JDK环境。这时候启动类中代码看起来似乎有问题,其实只是IDEA的JDK没有配置过而已:

下面演示配置方法:
macOS系统
1.打开菜单“File > Project Structure”:

2.添加SDK:

3.选择“JDK”:

4.目标为安装JDK下的“Contents/Home”目录:


5.在Project Structure中选择“Project”:

6.如下图所示,选择SDK:

macOS下IDEA的JDK设定已完成,启动类里的红色波浪线警告也消失了:

windows系统
与macOS版IDEA的JDK配置方法一模一样:
1.打开菜单“File > Project Structure”:

2.在Project Structrue下的SDKs中添加JDK:


3.在Project中选择JDK:


四、修改代码
我们新建一个Rest控制器:


名称为:HomeController

此时会弹出一个提示是否自动加入Github管理的对话框,勾选记住选择,然后点击“Yes”:

代码如下:
package top.cloudev.doc.web; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController; /**
* 我写的第一个REST控制器接口,仅用于演示
* Created by Mac.Manon on 2018/04/04
*/
@RestController
public class HomeController { /**
* hello spring cloud
* GET: /hello
* @return
*/
@GetMapping("/hello")
public String hello(){
return "hello, spring cloud!";
}
}
五、运行微服务

在windows下有可能遭到防火墙警告,点击“允许访问”即可:

项目启动成功,端口是8888,现在访问http://localhost:8888/hello

运行正常。
六、将代码变更提交到Github
打开Github Desktop,如下图,为本次更新代码写必要的备注,然后点击“Commit to master”:

如下图,点击“Push origin”将本次代码更新提交到Github服务器:

在Github.com上已能看到本次更新的代码了:


构建微服务开发环境8————Hello 微服务的更多相关文章
- 为 Python Server Pages 和 Oracle 构建快速 Web 开发环境。
为 Python Server Pages 和 Oracle 构建快速 Web 开发环境. - 在水一方 - 博客频道 - CSDN.NET 为 Python Server Pages 和 Oracl ...
- vue第三单元(webpack的应用-能根据具体的需求构建对应的开发环境)
第三单元(webpack的应用-能根据具体的需求构建对应的开发环境) #课程目标 理解什么是单页面应用. 掌握单页面和多页面的差异. 了解单页面的实现原理. 掌握模块化的方式实现webpack配置,区 ...
- [.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux)
[.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux) 1.关于跨平台 上篇中介绍了MVC的发展历程,说到ASP.NET ...
- Spark:利用Eclipse构建Spark集成开发环境
前一篇文章“Apache Spark学习:将Spark部署到Hadoop 2.2.0上”介绍了如何使用Maven编译生成可直接运行在Hadoop 2.2.0上的Spark jar包,而本文则在此基础上 ...
- 使用Eclipse+Maven+Jetty构建Java Web开发环境(几个教程综合集成2014发行)
工作需要使用Jetty由于web集装箱,得知Eclipse+Maven+Jetty该组合是非常好的,因此,要在网上找了很多教程,但不写或多或少特定的或过时的内容而导致最终的配置失败,易于配置为未来的同 ...
- Python开发篇——构建虚拟Python开发环境(Conda+Poetry)
前言 之前虽略有提及Python,但是没有实际地写点料.惭愧,惭愧,所以这次先起个头,讲讲如何构建虚拟Python开发环境.相信之前看过我博客的人可能会想:博主不会又要聊聊Docker吧?放心,不会. ...
- 构建微服务开发环境4————安装Docker及下载常用镜像
[内容指引] 下载Docker: Mac下安装Docker: Windows下安装Docker; 下载常用docker镜像. 一.下载Docker 1.Mac适用Docker下载地址:https:// ...
- 构建微服务开发环境1————如何安装JDK
[内容指引] 下载JDK: Mac系统安装JDK: Mac系统配置环境变量: Windows系统安装JDK: Windows系统配置环境变量. 一.下载JDK 1.访问Oracle官网 http:// ...
- 快速搭建 SpringCloud 微服务开发环境的脚手架
本文适合有 SpringBoot 和 SpringCloud 基础知识的人群,跟着本文可使用和快速搭建 SpringCloud 项目. 本文作者:HelloGitHub-秦人 HelloGitHub ...
随机推荐
- HttpSessionActivationListener序列化与反序列化
一.序列化与反序列化 1.什么是序列化 把对象转化位字节序列的过程称为序列化(保存到硬盘,持久化) 把字节序列转化位对象的过程称为反序列化(存放于内存) 2.序列化的用途 把对象的字节序列永久保存到硬 ...
- IE浏览器右键菜单插件开发(下篇)——如何用c#安装、卸载IE右键插件
建立Installer安装类,如图: 代码如下: using Microsoft.Win32; using ResourceShare.UserClient.Common; using System; ...
- c#开发wps插件
wps 2016版比旧版感觉大气多了,加载速度快,操作方便,一直是wps的优点.随着wps的稳定性提高(当然比office还是差了很多),政府等一些部门采用几乎免费的wps来办公.我们公司决定把业务扩 ...
- 无后台应用 Stash Backend
Stash Backend 是Github上的开源项目 https://github.com/gaboratorium/stash,目的在于提供一套方便使用.方便部署的后台应用.特别适合为Web前端和 ...
- GitHub起步---创建第一个项目
---恢复内容开始--- 刚起步学习GitHub,边学边说! {参考教程:http://blog.csdn.net/steven6977/article/details/10567719}这里描述的很 ...
- Unity服务端链接MySQL数据库
链接数据库,可以分为以下几个流程: 链接MySQL(数据库地址.端口.用户名.密码) 选择数据库 执行sql语句 关闭数据库 转换为代码如下: using System; using MySql.Da ...
- jemeter 实现接口自动化回归测试
jemeter做接口自动化测试的优点: 1.首先我认为最重要的是不需要编程基础,很多一直想做接口测试但一直徘徊在门边的原因可能就是不想写代码 2.可以更快的上手,能让测试人员更好的理解什么是接口测试, ...
- jmockito模拟方法中参数如何指定
在做单元测试的时候,经常会遇到mock类的方法的情景.在写单测过程中,遇到一些问题,比较困惑,便做了一些测试,并得出一个结论: 在mock类的方法时,当符合 (mock参数).equals(实际调用过 ...
- NEO从入门到开窗(1) - 一个智能合约的诞生
一.啰嗦两句 最近一直都在研究区块链,BitCoin,Etherenum, Hyper Ledger Fabric还有今天的主角小蚂蚁,当然出名以后改了一个艺名叫NEO.区块链大部分都是用Golang ...
- es6 Generator生成器函数
生成器函数使用function*声明. 在生成器函数内部,有一种类似return的语法:关键字yield.二者的区别是,普通函数只可以return一次,而生成器函数可以yield多次(当然也可以只yi ...