微服务环境搭建

第三章、微服务环境搭建

名词解释:

1、准备

实现配置好Java开发环境,包括jdk的安装、IDEA的安装;

注:SpringBoot2.0版本中要求最低的jdk的版本是1.8;

2、创建一个SpringBoot工程

file—new—project—Spring Initializr—选择SDK—next

填写Group和Artifact——选择默认的Maven工程,其他配置默认——next

开发Java web项目,至少选择一个勾选web中的web——finish——finish;

IDEA会从Spring.io官网下载工程模板。等待pom.xml文件下载相关的依赖,简单的SpringBoot项目搭建完成。

3、项目运行及配置

创建后的项目的结构如下:

其中HelloworldApplication是可运行文件;右键点击运行即可

若出现Caused by: java.net.BindException: Address already in use: bind错误则表示Tomcat的端口号被占用。

解决办法:在项目的根目录下创建application.properties配置文件,并在里面修改端口号,添加信息:“server.port:8888”

在HelloworldApplication中编写一下代码,运行测试:

@RestController//里面包含组合注解,在IDEA中可Ctrl+左键点开查看@SpringBootApplicationpublic class HelloworldApplication {?   public static void main(String[] args) {      SpringApplication.run(HelloworldApplication.class, args);   }?   @GetMapping("/hi")   public String hi(){      return "hello world!";   }}

打开本地浏览器,输入网址:http://localhost:8888/hi进行测试

若出现"hello world!"则运行成功。

注:此处未编写“/”的无映射文件,若直接输入http://localhost:8888会出现错误信息的页面。

4、Maven的使用

maven的核心是pom文件, pom文件以xml文件的形式来表示资源,包括一些依赖jar、插件、构建文件等,maven的工作流程:

1)Maven读取pom文件,pom文件是Maven文件的核心,所有的项目依赖、插件都在pom文件中统一管理。

2)下载依赖jar到本地仓库。手动添加依赖的网址:https://maven.aliyun.com/mvn/view,在idea中保存后自动下载。

若出现网络卡顿,可以右键点击pom.xml文件——maven——reimport;

3)执行构建的生命周期;

4)执行构建插件。

pom文件是一个xml文件,用于描述项目用到的资源、项目依赖、插件、代码位置等信息,是整个工程的核心,一般放在项目的根目录下,具体的结构如下:

1)<?xml version="1.0" encoding="UTF-8"?>指定了xml的版本和编码方式;

2)<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"></project>

project标签是该文件的根元素,声明了pom相关的命名空间;

3)<modelVersion>4.0.0</modelVersion>指定了pom的版本;

4)<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --></parent>指定父pom。

场景:有两个web项目A、B,一个java项目C,它们都需要用到同一个jar包:common.jar。如果分别在三个项目的pom文件中定义各自对common.jar的依赖,那么当common.jar的版本发生变化时,三个项目的pom文件都要改,项目越多要改的地方就越多,很麻烦。这时候就需要用到parent标签, 我们创建一个parent项目,打包类型为pom,parent项目中不存放任何代码,只是管理多个项目之间公共的依赖。在parent项目的pom文件中定义对common.jar的依赖,ABC三个子项目中只需要定义<parent></parent>,parent标签中写上parent项目的pom坐标就可以引用到common.jar了。

5)<groupId>com.docen</groupId>代表了公司、组织的名称,一般为公司域名倒写

<artifactId>helloworld</artifactId>代表本项目的全局唯一ID

<version>0.0.1-SNAPSHOT</version>该项目的版本

6)<properties> <java.version>1.8</java.version></properties>用于声明一些常量。

7)<dependencies></dependencies>依赖的根元素

8)<dependency></dependency>依赖,存在于其根元素之中,可以有多个

9)<build></build>构建标签,可以包含<plugins>(插件)标签,<plugins>里可以包含多个<plugin>

5、热部署

环境:idea、Springboot

1)添加依赖:

<dependency>   <groupId>org.springframework.boot</groupId>   <artifactId>spring-boot-devtools</artifactId>   <!-- optional=true,依赖不会传递 -->   <optional>true</optional>   <scope>runtime</scope></dependency>

2)更改idea配置:

“File” -> “Settings” -> “Build,Execution,Deplyment” -> “Compiler”,选中打勾 “Build project automatically”

组合键:(Windows平台)“Shift+Ctrl+Alt+/” 、(MAC平台)“Shift+CMD+Alt+/” ,选择 “Registry” ,选中打勾 “compiler.automake.allow.when.app.running”

3)Chrome禁用缓存:

F12或者“Ctrl+Shift+I”,打开开发者工具,“Network” 选项卡下 选中打勾 “Disable Cache(while DevTools is open)”

配置完成。

6、生成jar包

1)菜单:File->project stucture

2)在弹窗最左侧选中Artifacts->"+",选jar,选择from modules with dependencies,然后会有配置窗口出现,设置主类和MF文件的位置 ;

3)在build菜单中点击build Artfacts 生成jar包,如下

4)结果

原文地址:https://www.cnblogs.com/docen/p/10668072.html

时间: 2024-11-05 18:59:02

微服务环境搭建的相关文章

怀仁药店微服务环境搭建记录

怀仁药店微服务环境搭建记录: 基础条件:服务器已安装docker,且开通外网功能. 修改计算机hostname: hostnamectl set-hostname hr-rs 一.建立分区及格式: (注:先确保没有镜像和容器运行在服务器上) [[email protected] ~]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 50G 2.6G 48G 6% / devtmpfs 16G 0 16G 0% /dev tmpfs 16G

微服务的搭建

1.什么叫微服务?微服务是一个新兴的软件架构,就是把一个大型的单个应用程序和服务拆分为数十个的支持微服务.一个微服务的策略可以让工作变得更为简便,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议. 2.微服务特点微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些应用可独立地进行开发.管理和加速.在分散的组件中使用微服务云架构和平台,使部署.管理和服务功能交付变得更加简单. 3.微服务搭建在了解以上概念后,相信大家对微服务有大概的了解,现在说下微服务的搭建: 第一步:使用sp

使用阿里云ACM简化你的Spring Cloud微服务环境配置管理

摘要: 本文我们就如何使用阿里云ACM这样的配置管理产品在Spring Cloud中替代Spring Cloud Config帮助简化环境配置管理做一个简单的示例,帮助你理解基于ACM来简化微服务环境配置管理的方案,并会简单比较一下ACM与Spring Cloud Config方案的优劣. 配置的环境属性 毫无疑问,在系统持续交付的过程中,系统最终运行环境的多样性及复杂性毫无疑问增加了我们在配置管理工作上的负担,有时候,甚至不夸张的说,配置就是因环境而生. 这在Eugen Paraschiv的博

SprngCloud微服务框架搭建(一)

参照来源 :https://blog.csdn.net/forezp/article/details/70148833 1.简介 目前来说,SpringCloud是比较完整的微服务解决方案框架.不像其他rpc远程调用框架,只是解决某个微服务中的问题. 2.微服务框架搭建 2.1.服务的注册与发现Eureka(Finchley版本) 本次采用Eureka作为服务注册与发现的组件. 2.1.1.创建服务注册中心 首先创建一个空的maven工程,在其pom文件引入依赖, Spring Boot 版本采

简单Spring Cloud 微服务框架搭建

微服务是现在比较流行的技术,对于程序猿而言,了解并搭建一个基本的微服务框架是很有必要滴. 微服务包含的内容非常多,一般小伙伴们可以根据自己的需求不断添加各种组件.框架. 一般情况下,基本的微服务框架包含:框架:注册中心.负载均衡.声明式服务(feign).容错(hystrix).网关(权限)gateway 和 配置(resource) 注册中心:现在比较常用的有eureka.nacos 负载均衡:包括feign.ribbon等技术,相关对比可以参考另一位老哥的博客:<负载均衡之feign与rib

Spring Cloud 微服务中搭建 OAuth2.0 认证授权服务

在使用 Spring Cloud 体系来构建微服务的过程中,用户请求是通过网关(ZUUL 或 Spring APIGateway)以 HTTP 协议来传输信息,API 网关将自己注册为 Eureka 服务治理下的应用,同时也从 Eureka 服务中获取所有其他微服务的实例信息.搭建 OAuth2 认证授权服务,并不是给每个微服务调用,而是通过 API 网关进行统一调用来对网关后的微服务做前置过滤,所有的请求都必须先通过 API 网关,API 网关在进行路由转发之前对该请求进行前置校验,实现对微服

《springcloud 二》SrpingCloud Zuul 微服务网关搭建

网关作用 网关的作用,可以实现负载均衡.路由转发.日志.权限控制.监控等. 网关与过滤器区别 网关是拦截所有服务器请求进行控制 过滤器拦截某单个服务器请求进行控制 Nginx与Zuul的区别 Nginx是采用服务器负载均衡进行转发 Zuul依赖Ribbon和eureka实现本地负载均衡转发 相对来说Nginx功能比Zuul功能更加强大,能够整合其他语言比如lua脚本实现强大的功能,同时Nginx可以更好的抗高并发,Zuul网关适用于请求过滤和拦截等. Zuul网关 zuul是spring clo

SpringCloud微服务架构搭建--Mybatis-Plus(三)

学而时习之,不亦说乎 前言 具体业务实现离不开与数据库交互,本章重点记录一下SpringBoot集成druid数据源,集成mybatis-plus,为了开发方便,基于mybatis-plus的代码生成器,实现对业务最基本的增删改查操作. 准备工作 在mysql数据库中创建mingx_user库,并创建sys_user表,用于后续查询验证.表生成代码如下: DROP TABLE IF EXISTS `sys_user`;CREATE TABLE `sys_user` (  `id` varchar

ZooKeeper+Dubbo+SpringBoot 微服务Demo搭建

1. 首先创建springBoot项目,springBoot是一堆组件的集合,在pom文件中对需要的组件进行配置.生成如下目录结构 创建test项目,同步在test创建dubbo-api,dubbo-consume,dubbo-provider三个Model dubbo-provider 为服务的提供者,服务的实现层 dubbo-api 为服务提供者dubbo-provider的接口层 (此处dubbo-provider,dubbo-api相当于一个微服务,dubbo-api为对外接口,由消费者