B002-springcloud alibaba 微服务环境搭建

目录

      • 创建父工程
      • 创建基础模块
      • 创建用户微服务
      • 创建商品微服务
      • 创建订单微服务
      • 微服务调用

创建父工程

新建项目springcloud-alibaba,本工程不需要写代码,删除src

导包

    <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.3.RELEASE</version></parent><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><spring-cloud.version>Greenwich.RELEASE</spring-cloud.version><springboot.version>2.1.0.RELEASE</springboot.version><spring-cloud-alibaba.version>2.1.0.RELEASE</spring-cloud-alibaba.version></properties><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring-cloud-alibaba.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>

在这里插入图片描述

创建基础模块

shop-common

导包

        <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.58</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency>

创建实体类

@Entity(name="shop_user")//实体类跟数据表的对应
@Data
public class User {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)//数据库自增private Integer uid;//主键private String username;//用户名private String password;//密码private String telephone;//手机号
}
@Entity(name="shop_product")//实体类跟数据表的对应
@Data
public class Product {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)//数据库自增private Integer pid;//主键private String pname;//商品名称private Double pprice;//商品价格private Integer stock;//库存
}
@Entity(name="shop_order")//实体类跟数据表的对应
@Data
public class Order {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)//数据库自增private Long oid;//订单idprivate Integer uid;//用户idprivate String username;//用户名private Integer pid;//商品idprivate String pname;//商品名称private Double pprice;//商品价格private Integer number;//购买数量
}

创建用户微服务

创建新工程shop-user

导包

        <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>cn.ming</groupId><artifactId>shop-common</artifactId><version>1.0-SNAPSHOT</version></dependency>

配置文件

server:port: 8071
spring:application:name: service-userdatasource:url: jdbc:mysql://localhost:3306/shop?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=truedriver-class-name: com.mysql.jdbc.Driverusername: rootpassword: rootjpa:properties:hibernates:hbm2ddl:auto: updatedialect: org.hibernate.dialect.MySQL5InnoDBDialect

启动类

@SpringBootApplication
public class UserApp {public static void main(String[] args) {SpringApplication.run(UserApp.class,args);}
}

controller(略),service(略),dao

public interface UserDao extends JpaRepository<User,Integer> {
}

创建商品微服务

创建订单微服务

微服务调用

在微服务架构中,最常见的场景就是微服务之间的相互调用。我们以电商系统中常见的 用户下单 为例来演示微服务的调用:客户向订单微服务发起一个下单的请求,在进行保存订单之前需要调用商品微服务查询商品的信息。

我们一般把服务的主动调用方称为服务消费者,把服务的被调用方称为服务提供者。
在这里插入图片描述
在这种场景下,订单微服务就是一个服务消费者,商品微服务就是一个服务提供者。
在这里插入图片描述
商品服务编写查询商品代码(见工程)

启动服务,浏览器访问测试:http://localhost:8081/product/1

订单服务添加下单代码(见工程)

启动服务,浏览器访问测试:http://localhost:8091/order/product/1

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

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

相关文章

Linux上Mysql安装和部署(图文结合超详细)

1、首先将虚拟机装成功&#xff08;这里不做演示&#xff09; 2、df-h 查看光盘是否挂载&#xff0c;已挂载进行下一步&#xff0c;未挂载手动挂载 2.1、手动挂载 mount -o ro /dev/sr0 /media3、进入etc/yum.repos.d目录查看仓是否配置&#xff0c;若配置进行下一一步&#…

360企业安全浏览器兼容模式显示异常某个内容不显示 偶发现象 本地无法复现情况js

360企业安全浏览器兼容模式显示异常 &#xff0c;现象测试环境频发 &#xff0c;本地连测试无法复现&#xff0c;线上反馈问题。 出现问题的电脑为windows且使用360企业安全浏览器打开兼容模式可复现 复现过程&#xff1a; 不直接点击超链接跳转页面 &#xff0c;登录后直接通…

C++ 侯捷 程序设计(Ⅱ)兼谈对象模型 笔记

Conversion function 转换函数 侯捷老师使用分数 Fraction举例&#xff0c;分数理应可以被看作是小数 提供了Fraction类对象一个转换为double的方法&#xff0c;当碰到需要转换为double的情况下&#xff0c;会调用该方法。 黄色的就是转换函数&#xff0c;没有return type&am…

Python+appium自动化测试之如何控制App的启动和退出

由于本人使用的是Android设备做自动化测试&#xff0c;所以以下内容均基于Android系统做出的整理 一、启动app 启动app需要设置Capability参数&#xff0c;而Capability参数放在Desired Capalibity中&#xff0c;Desired Capalibity告诉Appium想要的自动化平台和应用程序&…

Flutter与Xamarin跨平台APP开发框架的区别

嘿&#xff0c;各位亲爱的朋友们&#xff01;大家好&#xff0c;我是咕噜铁蛋&#xff01;今天我们要探讨的话题是&#xff1a;Flutter与Xamarin这两款热门的跨平台APP开发框架。我深知选择合适的开发工具对于开发者来说有多么重要。那么&#xff0c;当我们需要开发跨平台应用时…

【机器学习】基于正余弦搜索算法优化的BP神经网络分类预测(SCA-BP)

目录 1.原理与思路2.设计与实现3.结果预测4.代码获取 1.原理与思路 【智能算法应用】智能算法优化BP神经网络思路【智能算法】正余弦优化算法&#xff08;SCA&#xff09;原理及实现 2.设计与实现 数据集&#xff1a; 多输入多输出&#xff1a;样本特征24&#xff0c;标签类…

高德地图——轨迹回放和电子围栏

功能点 地图的初始化显示电子围栏&#xff08;先初始化在调接口显示电子围栏&#xff09;显示定位显示轨迹轨迹回放 &#xff08;回放速度无法控制是因为高德地图的版本问题&#xff0c;不要设置版本&#xff0c;使用默认的即可生效&#xff09;获取当前城市及天气情况设置地图…

【漏洞复现】金和OA IncentivePlanFulfill.aspx SQL注入漏洞

0x01 产品简介 金和OA协同办公管理系统C6软件&#xff08;简称金和OA&#xff09;&#xff0c;本着简单、适用、高效的原则&#xff0c;贴合企事业单位的实际需求&#xff0c;实行通用化、标准化、智能化、人性化的产品设计&#xff0c;充分体现企事业单位规范管理、提高办公效…

黑马现有java课程框架及其功能梳理

目录 高并发相关提高通信效率Netty作用&#xff1a;哪些框架使用它&#xff1a; ChannelChannelHandler 和 ChannelPipelineEventLoop 和 EventLoopGroup**涉及的名词解释&#xff1a;**NIOSocketNginx 高并发相关 主要用来解决IO密集型程序&#xff08;大量文件读写&#xff…

盲盒小程序有什么优势?如何运营获客?

盲盒作为当下的热门行业&#xff0c;已经在国内外成功站稳脚步&#xff0c;市场规模庞大。 线上盲盒小程序也是互联网电商下的新模式&#xff0c;将传统的盲盒模式与线上电商模式相结合&#xff0c;为消费者提供一种新颖额盲盒购买体验&#xff0c;玩家在手机上就可以体验到抽…

C#实现FPGA自动烧录(Vivado)

需要提前安装Vivado Lab 打开控制面板 /// <summary>/// 进程初始化&#xff0c;并打开进程/// </summary>public static void InitAndStart(){process new Process();process.StartInfo.FileName "cmd.exe";process.StartInfo.UseShellExecute fals…

HBase Shell的应用案例

电商( eshop)平台具有海量数据、高并发访问、高速读写等特征&#xff0c;适合使用HBase分布式数据库进行数据存储。本节通过一个 HBase在电商平台的应用案例&#xff0c;熟练掌握并综合运用HBase Shell命令行终端提供的各种操作命令。 一、电商(eshop)平台的逻辑数据模型 在H…

【医疗-单位计算】

医疗-单位计算 ■ 体重模式下单位计算■ 剂量&#xff08;mg/kg&#xff09;■ 剂量速度&#xff08;mg/kg/h&#xff09;■ 溶度&#xff08;mg/ml&#xff09;■ 运行速度&#xff08;ml/h&#xff09; ■ 体重模式下单位计算 ■ 剂量&#xff08;mg/kg&#xff09; ■ 剂量…

HTML5+CSS3小实例:具有悬停效果的3D闪耀动画

实例:具有悬停效果的3D闪耀动画 技术栈:HTML+CSS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, init…

使用python和perl语言实现xlsx转化为csv

下面提供使用 Python 和 Perl 两种常用语言的示例代码&#xff0c;来实现将 Excel 文件 (.xlsx) 转换为 CSV 文件。 首先是 Python 的示例代码&#xff1a; 使用 Python 实现 xlsx 转换为 csv&#xff1a; # 导入所需模块 import pandas as pd# 读取 Excel 文件并写入 CSV 文…

Linux 查看防火墙相关命令

1、查看防火墙状态 systemctl status firewalld 2、启动防火墙 systemctl start/restart firewalld 3、停止防火墙 临时停用&#xff0c;重启后失效 systemctl stop firewalld 4、永久停止防火墙 systemctl disable firewalld 5、开机启动 systemctl enable firew…

2024年卫生巾行业市场分析报告(京东天猫淘宝线上卫生巾品类电商数据查询)

最近&#xff0c;相关部门辟谣了一则“十大致癌卫生巾黑名单”的消息。这个榜单是部分博主AI撰写&#xff0c;为博眼球、蹭热度的结果。此次事件势必会对卫生巾行业产生一定影响&#xff0c;加剧行业竞争。 根据鲸参谋电商数据平台显示&#xff0c;2024年1月至2月线上电商平台…

LeetCode第一天(495.提莫攻击)

题目&#xff1a; 在《英雄联盟》的世界中&#xff0c;有一个叫 “提莫” 的英雄。他的攻击可以让敌方英雄艾希&#xff08;编者注&#xff1a;寒冰射手&#xff09;进入中毒状态。 当提莫攻击艾希&#xff0c;艾希的中毒状态正好持续 duration 秒。 正式地讲&#xff0c;提…

从内存巷弄到指针大道(一)

文章目录 1.内存和地址1.1理解内存地址酒店大堂&#xff1a;内存的入口房间号&#xff1a;内存地址的意义酒店的楼层划分&#xff1a;内存的结构酒店的房间单位&#xff1a;计算机中的常见单位 1.2如何理解编址 2.指针变量和地址2.1取地址操作符&#xff08;&)2.2 指针变量…

姿态生成smpl

目录 Minimal-IK 根据3d姿态预测smpl参数HybrIK smplx_kid_template.npy 下载 h36m_mean_beta.npy下载 h36m_mean_beta.npy 转换脚本