【内容指引】
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 微服务的更多相关文章

  1. 为 Python Server Pages 和 Oracle 构建快速 Web 开发环境。

    为 Python Server Pages 和 Oracle 构建快速 Web 开发环境. - 在水一方 - 博客频道 - CSDN.NET 为 Python Server Pages 和 Oracl ...

  2. vue第三单元(webpack的应用-能根据具体的需求构建对应的开发环境)

    第三单元(webpack的应用-能根据具体的需求构建对应的开发环境) #课程目标 理解什么是单页面应用. 掌握单页面和多页面的差异. 了解单页面的实现原理. 掌握模块化的方式实现webpack配置,区 ...

  3. [.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux)

    [.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux) 1.关于跨平台 上篇中介绍了MVC的发展历程,说到ASP.NET ...

  4. Spark:利用Eclipse构建Spark集成开发环境

    前一篇文章“Apache Spark学习:将Spark部署到Hadoop 2.2.0上”介绍了如何使用Maven编译生成可直接运行在Hadoop 2.2.0上的Spark jar包,而本文则在此基础上 ...

  5. 使用Eclipse+Maven+Jetty构建Java Web开发环境(几个教程综合集成2014发行)

    工作需要使用Jetty由于web集装箱,得知Eclipse+Maven+Jetty该组合是非常好的,因此,要在网上找了很多教程,但不写或多或少特定的或过时的内容而导致最终的配置失败,易于配置为未来的同 ...

  6. Python开发篇——构建虚拟Python开发环境(Conda+Poetry)

    前言 之前虽略有提及Python,但是没有实际地写点料.惭愧,惭愧,所以这次先起个头,讲讲如何构建虚拟Python开发环境.相信之前看过我博客的人可能会想:博主不会又要聊聊Docker吧?放心,不会. ...

  7. 构建微服务开发环境4————安装Docker及下载常用镜像

    [内容指引] 下载Docker: Mac下安装Docker: Windows下安装Docker; 下载常用docker镜像. 一.下载Docker 1.Mac适用Docker下载地址:https:// ...

  8. 构建微服务开发环境1————如何安装JDK

    [内容指引] 下载JDK: Mac系统安装JDK: Mac系统配置环境变量: Windows系统安装JDK: Windows系统配置环境变量. 一.下载JDK 1.访问Oracle官网 http:// ...

  9. 快速搭建 SpringCloud 微服务开发环境的脚手架

    本文适合有 SpringBoot 和 SpringCloud 基础知识的人群,跟着本文可使用和快速搭建 SpringCloud 项目. 本文作者:HelloGitHub-秦人 HelloGitHub ...

随机推荐

  1. 【Android】[Problem]-"Waiting for target device to come online".

    环境: win10专业版(创意者),Android studio 2.3.1 问题描述: 安装玩Android studio之后创建一个项目,建立AVD之后,运行程序时一直不能启动AVD,具体描述为: ...

  2. anguar-select2

    <!DOCTYPE html> <html ng-app="App"> <head> <meta charset="UTF-8& ...

  3. python PEP8相关介绍

    在学习了python相关技术之后,开始重视其开发规范,以满足代码的可读性以及可维护性.主要的是学习了PEP8-style for python code的相关内容. 代码布局 缩进:每一级4个缩进.连 ...

  4. MyBatis关联关系

    1.一对多:一个国家对应多个城市 01.实体类 package cn.pb.bean;import java.util.Set;/** * 国家的实体类 */public class Country ...

  5. 深度学习基础网络 ResNet

    Highway Networks 论文地址:arXiv:1505.00387 [cs.LG] (ICML 2015),全文:Training Very Deep Networks( arXiv:150 ...

  6. Win32 API之绘图函数

    AbortPath 抛弃选入指定设备场景中的所有路径.也取消目前正在进行的任何路径的创建工作 AngleArc 用一个连接弧画一条线 Arc 画一个圆弧 BeginPath 启动一个路径分支 Canc ...

  7. push_back和emplace_back的区别

    emplace_back能就地通过参数构造对象,不需要拷贝或者移动内存,相比push_back能更好地避免内存的拷贝与移动,使容器插入元素的性能得到进一步提升.在大多数情况下应该优先使用emplace ...

  8. Android GC Log

    最近在研究Android内存垃圾回收的内容,遇到一些自己之前不知道的技巧和方法.现在分享一种简单的在Logcat中可以看到垃圾回收状态的方法.经常关注Logcat日志的童鞋偶尔会看到一条类似于以下形式 ...

  9. NodeJS定时任务

    在实际开发项目中,会遇到很多定时任务的工作.比如:定时导出某些数据.定时发送消息或邮件给用户.定时备份什么类型的文件等等 一般可以写个定时器,来完成相应的需求,在node.js中自已实现也非常容易,接 ...

  10. 【Python】 Web开发框架的基本概念与开发的准备工作

    Web框架基本概念 现在再来写这篇文章显然有些马后炮的意思.不过正是因为已经学习了Flask框架, 并且未来计划学习更加体系化的Django框架,在学习过程中碰到的很多术语等等,非常有必要通过这样一篇 ...