专题模块项目功能说明和运行方法-02

项目集介绍

在这里插入图片描述

SpringbootSeries父工程

此模块中只有一个pom.xml文件,是后面所有模块的父模块,主要功能有两个:子模块管理和依赖管理。

类别必选可选
基础框架jdk 17+
spring-boot-starter 3.2.4
spring-boot-starter-web 3.2.4
spring-cloud 2023.0.1
spring-cloud-alibaba 2023.0.1.0
数据库mybatis-plus-spring-boot3-starter 3.5.6
druid-spring-boot-starter 1.2.22
mysql-connector-java 8.0.33
工具包cn.hutool 5.8.27
org.projectlombok 1.18.30
org.mapstruct 1.5.5.Final
mapstruct-processor 1.5.5.Final
framework-commons 1.0-SNAPSHOT
日志slf4j 2.0.12
logback 1.4.14
测试spring-boot-starter-test 3.2.4
springdoc-openapi-starter-webmvc-ui 2.4.0
spring-boot-starter-actuator 3.2.4 : runtime
spring-boot-devtools 3.2.4

Framework子工程组

这个工程组中一共包含两个子模块,framework-commons可以单独引用, 其中framework-persistence依赖了framework-commons

  • framework-commons:springboot框架底层功能封装;
  • framework-commons:mybatis数据库操作相关底层功能封装;

SpringBoot子工程组

表格中,启动方法列中run jar表示运行模块下相应的SpringbootXxxxxApplication.java 文件,另外sh startup.sh -m standalone 是Nacos启动命令

功能说明涉及模块和软件启动方法
Springboot基础工程springboot-base:18080run jar
Springbootweb基础工程springboot-web: 18081run jar
Springboot常用功能springboot-common-config:17000run jar
Springboot集成mybatisplusspringboot-mybatisplus:18086run jar
Springboot集成redisspringboot-redis:18087consul agent -dev
brew services start redis
run jar
Springboot集成Kafkaspringboot-kafka:15002consul agent -dev
brew services start zookeeper
brew services start kafka
run jar
发布Springboot应用服务Docker镜像springboot-docker:19508sh startup.sh -m standalone
mvn -clear package
docker build -t springbootapp:lecture .
docker run -it -d springbootapp:lecture /bin/bash
docker logs containerId

SpringCloud子工程组

表格中,启动方法列中run jar表示运行模块下相应的SpringbootXxxxxApplication.java 文件

功能说明涉及模块和软件启动方法
Consul 注册中心springcloud-consul-server:18093consul agent -dev
run jar
Consul配置中心springcloud-consul-config:18087consul agent -dev
run jar
Netflix-ribbon+Consul负载均衡springcloud-consul-server :18093, 18094 provider服务提供者
springcloud-consul-client :18095 consumer服务消费者
consul agent -dev
run springcloud-consul-server
run springcloud-consul-client
Gateway+Consul服务网关springcloud-api-gateway:19000,服务网关
springcloud-gateway-server:18096,被代理的应用
Consul agent -dev
run springcloud-api-gateway
run springcloud-gateway-server
Enreka注册中心springcloud-eureka-server:18082,18083
springcloud-eureka-client:18084
springcloud-eureka-server-with-security:18085
run springcloud-eureka-server
run springcloud-eureka-client
Netflix-ribbon+Enreka负载均衡springcloud-eureka-server :18082,注册中心
springcloud-ribbon-server:18091, 18092, provider服务提供者
springcloud-ribbon-client:18090, consumer服务消费者
run springcloud-eureka-server
run springcloud-ribbon-server
run springcloud-ribbon-client
SpringbootAdmin服务监控springcloud-admin-server:19888,图形化配置中心
springcloud-client-server:19889,被管理的测试应用
consul agent -dev
run springcloud-gateway-server
run springcloud-client-server

Alibaba SpringCloud子工程组

表格中,启动方法列中run jar表示运行模块下相应的SpringbootXxxxxApplication.java 文件

功能说明涉及模块和软件启动方法
Nacos配置中心alibaba-nacos-config:19500sh startup.sh -m standalone
run jar
Nacos注册中心alibaba-nacos-client:19503sh startup.sh -m standalone
run jar
Nacos+OpenFeign负载均衡alibaba-nacos-server:19501,19502 provide服务端
springboot-openFeign-client : 19506, consumer客户端
sh startup.sh -m standalone
run alibaba-nacos-server
run springboot-openFeign-client
Nacos+Sentinel服务治理alibaba-sentinel-client:19504
alibaba-sentinel-server:19505
sh startup.sh -m standalone
sh sentinel
run alibaba-sentinel-server
run alibaba-sentinel-client
Nacos+Sentinel+OpenFeign服务降级alibaba-sentinel-openFeign-client:19508sh startup.sh -m standalone
sh sentinel
run jar

项目集运行和测试方法

java jdk最低版本17

因采用了父子结构,所以在本地运行相应模块的SpringbootXxxxApplication.java启动类之前,首先:

安装Maven基础模块

  1. 先在springbootSeries模块(即最外层的父工程)中执行mvn install,把pom.xml缓存到本地maven缓存库中;
  2. 再依次在framework-commonsframework-persistence模块中执行mvn install,缓存通用jar包到本地maven缓存库中;
    在这里插入图片描述

如果不需要修改上述三个模块的源码,则在本地只需执行一次mvn install命令即可,需要注意的是以上三个模块的执行顺序不能弄错,先springbootSeries–>framework-commons–>framework-persistence

三方插件服务启动

某些模块需要其它三方插件来辅助运行,现把启动方式罗列在些,以方便查找:

# 启动Nacos,访问地址:http://localhost:8848/nacos
sh startup.sh -m standalone  # 启动Consul,访问地址:http://127.0.0.1:8500/
consul agent -dev# 启动Redis
redis server# 启动sentinel dashboard,访问地址 http://localhost:9999
java -Dserver.port=9999 -Dcsp.sentinel.dashboard.server=localhost:9999 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.7.jar

启动Springboot服务

一般只需要执行位于`com.korgs.SpringbootXxxxxApplication.java’路径下的SpringbootApplication启动类,即可运行相应模块服务。
在这里插入图片描述

测试Springboot服务

在这里笔者建议采用 Swagger3 来进行测试,因为 Swagger3 服务已事先集成到了framework-commons模块中,同时为了方便,在每个模块的SpringbootXxxxxApplication.
java类中都定义了一个名为 http://localhost:18080/helloworld 的测试Restful接口。Swagger-UI访问地址如下:

  • http://localhost:18080/swagger-ui.html

在这里插入图片描述

18080是应用开放的端口,通过application.properties文件的server.port=18080属性定义

如果涉及多个springboot配置文件的模块,在Idea中可以在启动配置对话框中添加Springboot,然后在配置界面勾选程序实参,最后配置–spring.profiles.active=serverBackup,以指定不同springboot的profile配置文件
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

kafka系列一:初识kafka

概述 kafka是由scala语言编写的一个分布式且具备高可用、高性能、可持久化、可水平扩展、支持流数据处理等众多特性的消息系统,常活跃于大数据生态中,而且大名鼎鼎的rocketmq就是参考了kafka的设计原理。 目前越来越多的开源分布式中间件都支持与kafka集…

kraken2 最新版安装,极简模式

kraken2 git clone https://github.com/DerrickWood/kraken2.gitcd kraken2./install_kraken2.sh /opt/krakenvim .bashrc ---------------- # Kraken export PATH"/opt/kraken:$PATH" ----------------source .bashrc Note: 不晓得是不是我设置了清华源&#xff0c…

AI烟雾监测识别摄像机:智能化安全防范的新利器

随着现代社会的不断发展,人们对于安全问题的关注日益增加,尤其是在日常生活和工作中,对火灾等意外事件的预防成为了一项重要任务。为了更好地应对火灾风险,近年来,AI烟雾监测识别摄像机应运而生,成为智能化…

【Ansiable】ansible的模块和主机清单

Ansible Ansible是一个基于Python开发的配置管理和应用部署工具,现在也在自动化管理领域大放异彩。它融合了众多老牌运维工具的优点,Pubbet和Saltstack能实现的功能,Ansible基本上都可以实现。 Ansible能批量配置、部署、管理上千台主机。比…

python turtle

名字动画 #SquareSpiral1.py import turtle t turtle.Pen() turtle.bgcolor("black")my_nameturtle.textinput("输入你的姓名","你的名字?") colors["red","yellow","purple","blue"] for…

适合小白使用的编译器(c语言和Java编译器专属篇)

本节课主要讲如何安装适合编程小白的编译器 废话不多说,我们现在开始 c/c篇 首先,进入edge浏览器,在搜索框输入visual studio ,找到带我画圈的图标,点击downloads 找到community版(社区版)的下…

【排序算法】之冒泡排序

一、算法介绍 冒泡排序(Bubble Sort)是一种基础的排序算法,它的主要思想是通过重复遍历待排序的列表,比较每对相邻的元素并根据需要交换它们,使得每一遍遍历都能将未排序的最大(或最小)元素“冒…

使用sqlmodel实现唯一性校验2,插入之前检查是否已存在

虽然之前添加唯一性校验的方法能够解决数据唯一的问题,但是如果忘了处理异常,则可能会导致程序崩溃。 在此基础上,我们可以在插入数据之前检查该数据是否已存在。 原来的代码: from sqlmodel import Field, Session, SQLModel,…

LINUX 入门 6

LINUX 入门 6 day10 20240505 耗时:41min day10 20240506 耗时:155min 课程链接地址 第6章 DNS协议与请求 1 DNS协议分析与项目介绍 自己去看教程 快速扫了一下,还是结合实践去看概念有感觉 回答以下几个问题: dns作用dns分层…

PLC学习笔记

PLC学习笔记 前言一、一些基操知识二、GX works2编程2.1 位逻辑1.2 中间寄存器1.3 PLC的扫描方式 总结 前言 我这个人真的是太渴望知识了~ 一、一些基操知识 一般X表示输入,Y表示输出。一般八个为一组X0~X7M表示中间寄存器,M0~M7时间T、计数C 二、GX …

Centos 7.9 配置VNCServer实现远程vnc连接

文章目录 1、Centos安装图形界面1.1、安装X Windows System图形界面1.2、安装GNOME图形界面 2、VNC SERVER配置2.1、VNC SERVER安装2.2、VNC SERVER配置1)创建vnc配置文件2)修改配置文件内容3)完整配置文件参考 2.3、设置vnc密码2.4、配置防火…

C#语言核心

一、面向对象基本概念 万物皆对象,用程序来抽象(形容)对象,用面向对象的思想来编程 用中文去形容一类对象,把一类对象的共同点提取出来,然后用程序语言把它翻译过来,带着对象的概念在程序中使…

OCR文本识别模型CRNN

CRNN网络结构 论文地址:https://arxiv.org/pdf/1507.05717 参考:https://blog.csdn.net/xiaosongshine/article/details/112198145 git:https://github.com/shuyeah2356/crnn.pytorch CRNN文本识别实现端到端的不定长文本识别。 CRNN网络把包含三部分&…

IOS离线打包uniapp的信息时报错如下的解决方法

IOS离线打包uniapp的信息时报错如下的解决方法 问题描述: Extract app intents metadata 0.1 seconds XExtractAppIntentsMetadata(in target HBuilder from project HBuilder-Hello)cd /Users/whb/space/vpt/vptios/HBuilder-Hello/Applications/Xcode.app/Conte…

分布式与一致性协议之ZAB协议(六)

ZAB协议 成员发现 成员发现是通过跟随者和领导者交互来完成的,目标是确保大多数节点对领导者的关系没有异议,也就是确立领导者的领导地位。成员发现的实现流程如图所示。 1.领导者选举结束,节点进入跟随者状态或者领导者状态后&#xff0…

如何获得一个Oracle 23ai数据库(RPM安装)

准确的说,是Oracle 23ai Free Developer版,因为企业版目前只在云上(OCI和Azure)和ECC上提供。 方法包括3种,本文介绍第2种: Virtual ApplianceRPM安装Docker RPM安装支持Linux 8和Linux 9。由于官方的Vi…

Elastic 通过 AI 驱动的安全分析改变 SIEM 游戏

作者:Santosh Krishnan, Jennifer Ellard 借助由搜索 AI 提供支持的新攻击发现功能,优先考虑攻击,而不是警报。 传统的安全信息与事件管理系统(SIEM)在很大程度上依赖屏幕背后的人类才能取得成功。警报、仪表盘、威胁…

【busybox记录】【shell指令】join

目录 内容来源: 【GUN】【join】指令介绍 【busybox】【join】指令介绍 【linux】【join】指令介绍 使用示例: 打印两个文件的共有行 - 默认输出 可以对字母排序 可以对数字排序 可以对字符串排序 打印两个文件的共有行 - 输出文件1或者文件2中…

SQL注入实例(sqli-labs/less-1)

初始网页 从网页可知传递的参数名为 id,并且为数字类型 1、得知数据表有多少列 1.1 使用联合查询查找列数(效率低) http://localhost/sqli-labs-master/Less-1/?id1 union select 1,2 -- 1.2 使用order by查找列数(效率高&…

【MySQL】MySQL基本知识点

目录 1.SQL分类: 2.DDL-数据库操作 3.DDL-表操作-创建 4.DDL-表操作-查询 5.DDL-表操作-数据类型 6.DDL-表操作-修改 1.SQL分类: 2.DDL-数据库操作 3.DDL-表操作-创建 注意:里面的符号全部要切换为英文状态 4.DDL-表操作-查询 5.DDL…