商场学习之微服务

前言

寒假前在新电脑上配置了java环境,maven仓库,node,js,navicat,MySQL,linux,vmware等环境,创建了6个mysql数据库,77张表。
在这里插入图片描述

如此多的表,字段,去手写基础架子增删改查需要耗费大量时间的重复工作,因此:

  1. 通过人人开源逆向工程,先获取了一个连接登陆首页权限管理的通用前后短模块
  2. 在通过人人代码生成器创建各个以springboot为框架的微服务项目,每个微服务项目包括了实体类,controller,service,mapper层,又创建了一个common项目服务,为各个微服务提供通用方法
    在这里插入图片描述

现状及其要做的事情

目前前段Vue项目与renren-fast后端项目所对应,提供了系统的登录及权限管理系统,而其他微服务项目并未与前段项目相连。
首先要做的是把这个项目变成一个微服务项目
在这里插入图片描述

  1. 前端项目不在对应renren-fast这个微服务项目,而是应当对应一个后端统一的网关,由网关来返回前端想要的服务
  2. 后端各个微服务项目要去注册中心配置中心进行注册和统一配置,这样当一个微服务项目调用另一个微服务项目,只需要去注册中心,看哪些服务注册了,直接使用就可
  3. 网关也是通过注册中心去寻找服务然后返回前端

微服务学习

spring cloud alibaba的github地址
这是主要的组件。
在这里插入图片描述

Nacos注册中心配置中心

nacos需要先去github项目下载
下载了nacos服务然后在项目中引入对应的注册中心和配置中心依赖

       <!--        服务注册/发现--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!--        配置中心来做配置管理--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency>

然后点击bin目录中的这个启动nacos服务器,弹出的cmd会有nacos可视化的网址,在8848端口,访问后使用管理员登录,账号密码都是nacos
在这里插入图片描述

在项目中使用nacos服务

  1. 在项目配置文件写上nacos的路径端口, 还有该微服务项目的名称
    在这里插入图片描述
  2. 在springboot启动类加上注解
@EnableDiscoveryClient
  1. 然后就可以在服务管理中看到注册的服务了
    在这里插入图片描述
  2. 添加feign接口,这样才能让一个在naos里的微服务去调用另一个在nacos里的微服务
    第一步,引入feign的依赖
        <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency>

第二步,添加一个feign目录,把要调用的微服务写一个接口,比如我这个服务要调用3个微服务,那么就写3个接口,在每个接口上添加@FeignClient(“coupon”) 这个注解,里面写该接口调用的微服务在nacos中的注册名
在这里插入图片描述
直接复制要调用的微服务的controller中方法及其路径注解,需要注意,路径一定要手动加全,因为我们使用requestmapping注解在controller类上为每个方法提供了基础路径,实际路径是基础路径拼接方法上的路径

第三步,在启动类中添加@EnableFeignClients(basePackages = “com.jlau.agriMall.member.feign”) 该注解,里面的basepackage参数是扫描feign目录

第四步,在本服务中需要用其他微服务的地方,引入所需要使用微服务的feign接口对象,然后开始使用
在这里插入图片描述

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

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

相关文章

加州大学欧文分校英语高级语法专项课程01:Verb Tenses and Passives 学习笔记

Verb Tenses and Passives Course Certificate Course Intro 本文是学习 Verb Tenses and Passives 这门课的学习笔记。 文章目录 Verb Tenses and PassivesWeek 01: Simple, Progressive, and Perfect Verb Tenses ReviewLearning Objectives Present Perfect Tense Review L…

从我的实体书单中,精选这六本书推荐

工作之余偶尔看看书&#xff0c;偏爱翻阅实体书。随着时间的推移&#xff0c;书逐渐变得多了起来。为了给新书腾出空间&#xff0c;同时也为了减轻收藏实体书的经济负担&#xff0c;我决定进行一次书籍的整理和出售。在这一过程中&#xff0c;我特意挑选了六本我个人喜爱的书籍…

《构建智能财务预算与管控技术架构:实现企业财务管理的高效运作》

在当今数字化时代&#xff0c;企业财务预算与管控技术的应用已成为企业管理的关键一环。通过构建智能化的财务预算与管控技术架构&#xff0c;企业能够实现财务管理的精细化、智能化和高效化&#xff0c;从而更好地应对市场竞争和风险挑战&#xff0c;提升企业的竞争力和盈利能…

i春秋-GetFlag

题目 考点 sql注入&#xff0c;md5加密&#xff0c;代码审计&#xff0c;利用eval函数 解题 参考wp https://www.cnblogs.com/qiaowukong/p/13630130.html找md5值 看见验证码中的提示&#xff0c;就是去找一个md5值前六位是指定值的数&#xff08;严格来说不一定是数&…

【C语言项目】贪吃蛇(下)

个人主页~ 源码在Gitee仓库~ 上一篇贪吃蛇&#xff08;上&#xff09;~ 贪吃蛇 四、核心的实现游戏测试1、GameStart&#xff08;1&#xff09;控制台窗口大小和名字设置&#xff08;2&#xff09;光标隐藏&#xff08;3&#xff09;打印欢迎界面&#xff08;4&#xff09;创建…

鸿蒙布局Column/Row/Stack

鸿蒙布局Column/Row/Stack 简介我们以Column为例进行讲解1. Column({space: 10}) 这里的space: 10&#xff0c;表示Column里面每个元素之间的间距为102. width(100%)&#xff0c;height(100%) 表示宽高占比3. backgroundColor(0xffeeeeee) 设置背景颜色4. padding({top: 50}) 设…

Vue报错:TypeError: Cannot read property ‘upgrade‘ of undefined

文章目录 Vue报错&#xff1a;TypeError: Cannot read property upgrade of undefined前言解决办法 Vue报错&#xff1a;TypeError: Cannot read property ‘upgrade’ of undefined 前言 最近打开一个很就之前的开发项目&#xff0c;因为扫描包&#xff0c;所以删除了部分代…

如何从未入库的gerrit中撤销一个文件

用一个例子说明 比如有一个提交里面的default.xml的修改没有必要&#xff0c;需要从未入库的gerrit中移除 步骤如下&#xff1a; 1.做reset操作 git reset HEAD^ packages/SettingsProvider/res/values/defaults.xml 2.做checkout操作 git checkout packages/SettingsProv…

【C++】STL-list的使用

目录 1、list的使用 1.1 list的构造 1.2 list的遍历 1.3 list capacity 1.4 list element access 1.5 容量相关 list是一个带头双向循环链表 1、list的使用 1.1 list的构造 1.2 list的遍历 list只有两种遍历方式&#xff0c;因为没有operator[] 因为list的双向链表&am…

13.跳跃游戏

文章目录 题目简介题目解答解法一&#xff1a;贪心算法&#xff0b;动态规划代码&#xff1a;复杂度分析&#xff1a; 题目链接 大家好&#xff0c;我是晓星航。今天为大家带来的是 跳跃游戏面试题 相关的讲解&#xff01;&#x1f600; 题目简介 题目解答 思路&#xff1a;这…

vscode打开esp-idf工程,找不到头文件,有波浪线

就像这样 多半是因为原始的工程不是用vscode的插件新建的&#xff0c;因此没有相关的路径。需要在工程文件夹下的.vscode文件夹中的c_cpp_properties.json文件中增加路径&#xff0c;可以参考插件自动新建的工程里面的写法 {"configurations": [{"name":…

LabVIEW二维码生成与识别

LabVIEW二维码生成与识别 随着数字化时代的快速发展&#xff0c;QR二维码作为一种高效的信息传递和识别手段&#xff0c;已广泛应用于各行各业。利用LabVIEW软件及其NI视觉开发模块(VDM)来实现一个高效的QR二维码生成与识别系统。该系统不仅能够快速生成带有自定义信息的二维码…

Linux网络编程】传输层中的TCP和UDP(UDP篇)

【Linux网络编程】传输层中的TCP和UDP&#xff08;UDP篇&#xff09; 目录 【Linux网络编程】传输层中的TCP和UDP&#xff08;UDP篇&#xff09;传输层再谈端口端口号范围划分认识知名端口号netstatiostatpidofxargs UDP协议UDP协议端格式UDP的特点面向数据报UDP的缓冲数据UDP使…

linux性能监控之free

free&#xff1a;linux系统自带命令&#xff0c;显示内存状态&#xff0c;命令查询来源于/proc/meminfo 文件 [rootk8s-master ~]# free --helpUsage:free [options]Options:-b, --bytes show output in bytes-k, --kilo show output in kilobytes-m, --mega…

小猫咪邮件在线发送系统源码v1.1,支持添加附件

小猫咪邮件在线发送系统源码v1.1&#xff0c;支持添加附件 一款免登录发送邮件&#xff0c;支持发送附件&#xff0c;后台可添加邮箱,前台可选择发送邮箱 网站数据采取本地保存&#xff0c;所以使用前请给网站修改权限&#xff0c;否则很多功能将无法使用 安装教程&#xff…

《软件方法(下)》8.3.3 泛化的一些重点讨论(202405更新)

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 8.3 建模步骤C-2 识别类的关系 8.3.3 泛化的一些重点讨论 8.3.3.1 子集的不相交和完整 泛化是集合关系&#xff0c;在建模泛化关系时&#xff0c;我们对泛化关系中的子类&#xff0…

ACE框架学习4

目录 ACE Proactor框架 异步I/O工厂类 ACE_Handler类 前摄式Acceptor-Connector类 ACE_Proactor类 ACE Streams框架 ACE_Model类 ACE_Streams类 ACE Proactor框架 ACE Proactor框架实现了proactor模式&#xff0c;也就是异步网络模式&#xff0c;允许事件驱动…

47-Qt控件详解:Buttons Containers1

一 QPushButton (命令按钮) #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QPushButton>//引入QPushButton类对应的头文件class MainWindow : public QMainWindow {Q_OBJECTpublic:MainWindow(QWidget *parent nullptr);~MainWind…

基于YOLOV8复杂场景下船舶目标检测系统

1. 背景 海洋作为地球上70%的表面积&#xff0c;承载着人类生活、经济发展和生态系统的重要功能。船舶作为海洋活动的主要载体之一&#xff0c;在海上运输、资源开发、环境监测等方面发挥着重要作用。复杂海洋环境下的船舶目标检测成为了海事管理、海洋资源开发和环境保护等领…

C# winform 以modbus TCP方式读取数据

C# winform 以modbus TCP方式读取数据 一、modbus开发 //nmodbus4读取到的数据都是ushort类型TcpClient tcpClient new TcpClient();tcpClient.Connect("127.0.0.1", 502);//连接到主机ModbusIpMaster master ModbusIpMaster.CreateIp(tcpClient);//Ip 主站 byte …