自制游戏——斗罗大陆
很简陋,没有图,请见谅
// mine[0] = 级数
// mine[1] = 战力
//mine[2] = 1 == 白虎
//mine[2] = 2 == 昊天锤
//mine[2] = 3 == 蓝银草
#include <bits/stdc++.h>
using namespace std;
int mine[100],live=3, dou = 1, luo = 1, da = 1, bag[1000], huan = 0, liang = 30;
long long huannian[100];
void jianjie() {cout << "这里没有魔法,没有武术,却有神奇的武魂。" << endl;cout << "这里的每个人在6岁的时候,都会在武魂殿中在魂师的帮助下进行武魂觉醒。" << endl;cout << "武魂有动物,有植物,有器物,武魂可以辅助人们的日常生活,有特殊天赋的人可以用之修炼并进行战斗。" << endl;cout << "有武魂且可以修炼而且级数在10级以上的被称为魂师。每个人都有级数,总共是1~100级,而每一个级数段位都有一个称号。" << endl;cout << "而1~9级是魂士;10~19级是魂师;20~29级是大魂师;30~39级是魂尊;40~49级是魂宗;50~59级是魂王;60~69级是魂帝;70~79级是魂圣;80~89级是魂斗罗;90~99级是封号斗罗。" << endl;cout << "封号斗罗又可分为90~94级普通封号斗罗,95~98级超级斗罗,99级极限斗罗" << endl;cout << "而且,每10级又可以吸收一个魂环,魂环等级又分为:" << endl;cout << "1,十年魂环(白色):任何魂士都可以吸入,最常见的魂环,也是最低级的,有条件的魂师都不会选择吸入这种魂环,拥有一个技能。" << endl;cout << "2,百年魂环(黄色):魂士可以吸入423年以下,魂师可以吸入764年以下,较为稀有,拥有一个技能。" << endl;cout << "3,千年魂环(紫色):魂尊可以吸收1760年以下,魂宗可以吸收5000年以下,较为罕见,拥有一个技能。" << endl;cout << "4,万年魂环(黑色):魂王可以吸入12000年以下,魂帝可以吸收20000年以下,魂圣可以吸收50000年以下,魂斗罗可以吸收所有万年魂环,极为罕见!拥有一个技能。" << endl;cout << "5,十万年魂环(红色):封号斗罗级,极致武魂或体质的原因才能吸入,拥有一个技能。" << endl;cout << "若超过吸收年限则是越级吸收,越级吸收过程中极其痛苦,失败了就会爆体而亡!" << endl;_sleep(1 * 2000);cout << endl;
}
int sui(int n, int m) {random_device rd;mt19937 reng(rd());uniform_int_distribution<int> sum(n, m);return sum(reng);
}
int hunji() {mine[2] += mine[0];cout << "乱披风之舞" << endl;if (huan >= 1) {cout << "泰坦苍穹破" << endl;cout << "重力沼泽" << endl;}cout << "抓" << endl;if (huan >= 2) cout << "锤撼天地" << endl;cout << "咬" << endl;if (huan >= 3) cout << "旋风狂舞" << endl;cout << "挠" << endl;if (huan >= 4) cout << "邪神破" << endl;cout << "毒液" << endl;if (huan >= 5) cout << "绚烂之爆" << endl;if (huan >= 6) cout << "大地蚁皇斩" << endl;if (huan >= 7) cout << "昊天真身" << endl;if (huan >= 8) cout << "千钧壁垒" << endl;if (huan >= 9) cout << "大须弥锤" << endl;if (huan >= 10) cout << "修罗结界" << endl;
}
int doupan() {if (mine[1] > liang) {cout << "胜利!" << endl;mine[0] += 1;da += 1;liang += 100;} else {cout << "你输了" << endl;live-=1;cout << "生命-1";cout << " 剩余生命" << live << endl; }return mine[100], da, liang,live;
}
void qianqingtiyao() {cout << "你睁开了眼睛" << endl;cout << "我";cout << "这是要死了吗?" << endl;cout << "不!!!" << endl;cout << "我要活着!!!" << endl;cout << "你又睁开了眼睛" << endl;cout << "我";cout << "这是在哪?" << endl;cout << "斗罗世界的生存竞争" << endl;cout << "拉开了序幕" << endl;cout << endl;
}
int kaihun() {_sleep(1*500);int n1,wuhun;n1 = sui(4, 10);wuhun = 2;int sdffs;cout << "你随着杰克长老进行开魂" << endl;cout << "你将手放在了上面" << endl;cout << "请输入你想要的初始魂力:";cout << "顿时,魂力球大放光彩" << endl;_sleep(1*100); cout << "你是" << n1 << "级的" << endl;mine[0] = n1;mine[1] = mine[0] * 34;mine[2] = wuhun;cout << "你的武魂竟是昊天锤" << endl;cout << "你的目标是:";cout << "达到500000" << endl;return mine[100];
}
int thing() {int num;cout << endl;cout << "战力:" << mine[1] << " 级数:" << mine[0] << endl;cout << "--------------------事件-------------------" << endl;cout << "[1]斗罗之路 [2]魂兽森林 [3]人物 [4]结束游戏" << endl;cout << "您选择:";cin >> num;return num;
}
int duida(int douluodalu()) {switch (da) {case 1:cout << " " << da << endl;_sleep(1 * 5000);hunji();doupan();break;case 2:cout << " " << da << endl;_sleep(1 * 1000);hunji();doupan();break;case 3:cout << " " << da << endl;_sleep(1 * 1000);douluodalu();_sleep(1 * 1000);hunji();doupan();if (da > 3) {da = 1;luo += 1;}if (luo > 3) {luo = 1;dou += 1;}break;}return da, luo;
}
int dou1luo1() {cout << "看门人:你是什么人?" << endl;cout << " 我是来上课的学生:唐三" << endl;cout << "看门人:交钱,不交就给我滚开!" << endl;cout << " 你别血口喷人,你看好了,这是我的邀请书:唐三" << endl;cout << "看门人:假的吧?先过了我这一关再说!" << endl;cout << " 来啊,谁怕谁:唐三" << endl;
}
int dou1luo2() {cout << "原社长:你是什么人?" << endl;cout << " 我是来住宿的学生:唐三" << endl;cout << "原社长:看来又要打一架了。" << endl;cout << " 什么意思:唐三" << endl;cout << "原社长:我是社长,只要有新来的学生,我就要和他打一架!" << endl;cout << " 我准备好了,开始吧:唐三" << endl;
}
int dou1luo3() {cout << "小舞:我叫小舞,跳舞的“舞”。" << endl;cout << " 我叫唐三:唐三" << endl;cout << "小舞:一环大魂师,请指教。" << endl;
}
int dou1() {switch (luo) {case 1:cout << " 一" << endl;cout << "看门人的侮辱" << endl;duida(dou1luo1);break;case 2:cout << " 二" << endl;cout << "宿舍中的较量" << endl;duida(dou1luo2);break;case 3:cout << " 三" << endl;cout << "小舞的出现" << endl;duida(dou1luo3);break;}
}
int dou2luo1() {cout << "火舞:一群小垃圾!" << endl;cout << " 说什么呢你:唐三" << endl;cout << "火舞:没什么,只是觉得你太弱了!" << endl;cout << " 凭实力说话:唐三" << endl;cout << "火舞:好啊,赛场上见!" << endl;
}
int dou2luo2() {cout << "风笑天:你欺负火舞!" << endl;cout << " 不,我还帮了她一把:唐三" << endl;cout << "风笑天:放**的**,我现在就要惩罚你这个厚颜无耻之人。" << endl;cout << " 不是,我真没把她怎么样:唐三" << endl;cout << "风笑天:哼!来吧!" << endl;
}
int dou2luo3() {cout << "比比东:十万年魂兽,拿下那个小女孩" << endl;cout << " 不许你们伤害她:唐三" << endl;cout << "比比东:唐三,我承认你很有天赋,可惜你是我的敌人。" << endl;cout << " 你想要怎么样:唐三" << endl;cout << "比比东:杀了他们!" << endl;
}
int dou2() {switch (luo) {case 1:cout << " 一" << endl;cout << "第一场对决" << endl;duida(dou2luo1);break;case 2:cout << " 二" << endl;cout << "风笑天" << endl;duida(dou2luo2);break;case 3:cout << " 三" << endl;cout << "我的小舞" << endl;duida(dou2luo3);break;}
}
int dou3luo1() {cout << "狼盗:抓住他们!" << endl;cout << " 不好,他们越来越多了:唐三" << endl;
}
int dou3luo2() {cout << "深海魔晶王:食物来了!" << endl;cout << " 谁死还不一定呢:唐三" << endl;cout << "深海魔晶王:有点意思,就是你们太弱了!" << endl;
}
int dou3luo3() {cout << "波塞西:来吧,在我手中坚持一炷香!" << endl;cout << " 冒昧了,前辈:唐三" << endl;cout << "波塞西:一炷香记时,开始!" << endl;
}
int dou3() {switch (luo) {case 1:cout << " 一" << endl;cout << "狼盗劫路" << endl;duida(dou3luo1);break;case 2:cout << " 二" << endl;cout << "深海魔晶王" << endl;duida(dou3luo2);break;case 3:cout << " 三" << endl;cout << "海神九考" << endl;duida(dou3luo3);break;}
}
int douluo() {if (dou > 3) {cout << "斗罗之路已打完" << endl; return 0;}cout << "第" << dou << "章第" << luo << "回--" << da << endl;switch (dou) {case 1:cout << "小舞的到来" << endl;dou1();break;case 2:cout << "精英大赛" << endl;dou2();break;case 3:cout << "成神之路" << endl;dou3();break;}
}
int wuhunpanding(int nian) {cout << "是" << nian << "的魂环" << endl;if (mine[0] / 10 != huan) {int num;cout << "是否吸收魂环?([1]是[2]否)";cin >> num;if (num == 1) {cout << "吸收中" << endl;huan += 1;huannian[mine[0] / 10] = nian;cout << "吸收成功" << endl;}}
}
int hunshoupan(int dizhan, int shou) {switch (shou) {case 1:cout << "是" << dizhan << "年的曼陀罗蛇!" << endl;break;case 2:cout << "是" << dizhan << "年的大地之王!" << endl;break;case 3:cout << "是" << dizhan << "年的大力金刚熊!" << endl;break;case 4:cout << "是" << dizhan << "年的狼盗!" << endl;break;case 5:cout << "是" << dizhan << "年的凤尾鸡冠蛇!" << endl;break;case 6:cout << "是" << dizhan << "年的天梦冰蚕!" << endl;break;case 7:cout << "是" << dizhan << "年的人面魔珠!" << endl;break;case 8:cout << "是" << dizhan << "年的大力金刚蚁!" << endl;break;case 9:cout << "是" << dizhan << "年的泰坦巨猿!" << endl;break;case 10:cout << "是" << dizhan << "年的天青牛蟒!" << endl;break;}int sum;cout << "是[1]逃跑[2]战斗" << endl;cin >> sum;if(sum == 1){cout << "逃跑成功" << endl;return 0;} else{hunji();if (mine[1] >= dizhan) {cout << "战斗胜利" << endl;mine[0] += 1;_sleep(1 * 500);wuhunpanding(dizhan);} else {cout << "战斗失败" << endl;live-=1;cout << "生命-1";cout << " 剩余生命" << live << endl;}}
}
int hunshousenling1(int n, int m) {int shou = sui(1, 10);int num = sui(n, m);hunshoupan(num, shou);
}
int muohun(){cout << "正在进入魔魂大白鲨(10 0000年~50 0000年)" << endl;_sleep(1 * 1000);int nian = sui(100000,500000);cout << "是" << nian << "的魔魂大白鲨" << endl; int sum;cout << "是[1]逃跑[2]战斗" << endl;cin >> sum;if(sum == 1){cout << "逃跑成功" << endl;return 0;} else{hunji();if (mine[1] >= nian) {cout << "战斗胜利" << endl;mine[0] += 1;_sleep(1 * 500);wuhunpanding(nian);} else {cout << "战斗失败" << endl;live-=1;cout << "生命-1";cout << " 剩余生命" << live << endl;}}
}
int hunshousenling() {int num;cout << "[1]魂兽森林外围(一)(100年~500年)" << endl;if (dou > 1 || (dou == 1 && luo > 1 ) || (dou == 1 && luo == 1 && da > 1)) {cout << "[2]魂兽森林外围(二)(500年~800年)" << endl;}if (dou > 1 || (dou == 1 && luo > 1 ) || (dou == 1 && luo == 1 && da > 2)) {cout << "[3]魂兽森林外围(三)(800年~1000年)" << endl;}if (dou > 1 || (dou == 1 && luo > 2 ) || (dou == 1 && luo == 2 && da > 2)) {cout << "[4]魂兽森林中间(一)(1000年~1500年)" << endl;}if (dou >= 2) {cout << "[5]魂兽森林中间(二)(1500年~5000年)" << endl;}if (dou >= 2 || (dou>=2 && luo >= 1)) {cout << "[6]魂兽森林中间(三)(5000年~10000年)" << endl;}if (dou >= 3) {cout << "[7]魂兽森林深处(10000年~100000年)" << endl;}if (dou >= 3) {cout << "[8]魔魂大白鲨(10 0000年~20 0000年)" << endl;}cout << "你要去:";cin >> num;switch (num) {case 1:cout << "正在进入魂兽森林外围(一)(100年~500年)" << endl;_sleep(1 * 1000);hunshousenling1(100, 500);break;case 2:cout << "正在进入魂兽森林外围(二)(500年~800年)" << endl;_sleep(1 * 1000);hunshousenling1(500, 800);break;case 3:cout << "正在进入魂兽森林外围(三)(800年~1000年)" << endl;_sleep(1 * 1000);hunshousenling1(800, 1000);break;case 4:cout << "正在进入魂兽森林中间(一)(1000年~1500年)" << endl;_sleep(1 * 1000);hunshousenling1(1000, 1500);break;case 5:cout << "正在进入魂兽森林中间(二)(1500年~5000年)" << endl;_sleep(1 * 1000);hunshousenling1(1500, 5000);break;case 6:cout << "正在进入魂兽森林中间(三)(5000年~10000年)" << endl;_sleep(1 * 1000);hunshousenling1(5000, 10000);break;case 7:cout << "正在进入魂兽森林深处(10000年~100000年)" << endl;_sleep(1 * 1000);hunshousenling1(10000,100000);break;case 8:muohun();break;default:cout << "输入错误" << endl;break;}
}
int renwu(){cout << "现有" << mine[0] << "级" << endl;cout << "现有" << mine[1] << "战力" << endl;cout << "已吸收" << huan << "个魂环" << endl;cout << "剩余可吸收" << (mine[0]/10)-huan << "个魂环" << endl;for(int i=1;i<=huan;i++){cout << i << "个魂环" << huannian[i] << endl;}}
int main() {qianqingtiyao();jianjie();kaihun();while (live > 0) {switch (thing()) {case 1:cout << "----------------------斗罗之路-----------------------" << endl;douluo();mine[1] = mine[0] * 34;for (int i = 1; i <= 10; i++) {mine[1] += huannian[i];}if (mine[1] >= 500000) {_sleep(1 * 1000);cout << "恭喜你,成了一代霸主!" << endl;return 0;}break;case 2:cout << "----------------------魂兽森林-----------------------" << endl;hunshousenling();mine[1] = mine[0] * 34;for (int i = 1; i <= 10; i++) {mine[1] += huannian[i];}if (mine[1] >= 500000) {_sleep(1 * 1000);cout << "恭喜你,成了一代霸主!" << endl;return 0;}break;case 3:cout << "----------------------人物-----------------------" << endl;renwu();break;case 4:cout << "----------------------游戏结束-----------------------" << endl;if (mine[0] < 100) {cout << "未达成目标" << endl;}cout << endl;return 0;break;default:cout << "输入错误" << endl;break;}}if (live == 0) {cout << "您的复活次数已经耗尽" << endl;cout << "您的生命即将转世" << endl;cout << "请重新开启游戏" << endl;}return 0;
}
相关文章:
自制游戏——斗罗大陆
很简陋,没有图,请见谅 // mine[0] 级数 // mine[1] 战力 //mine[2] 1 白虎 //mine[2] 2 昊天锤 //mine[2] 3 蓝银草 #include <bits/stdc.h> using namespace std; int mine[100],live3, dou 1, luo 1, da 1, bag[1000], huan 0, lia…...
数据治理双证通关经验分享 | CDGA/CDGP备考全指南
历经1个月多的系统准备,本人于2024年顺利通过DAMA China的CDGA(数据治理工程师)和CDGP(数据治理专家)双认证。现将备考经验与资源体系化整理,助力从业者高效通关。 🌟 认证价值与政策背景 根据…...
Vue全流程--Vue3.0与Vue2.0响应式原理对比
Vue2中数据的响应式 需要使用Vue.set这么一个api,修改数据 需要使用Vue.delete这么一个api,删除数据 数据代理这个当面的理解可以看看我前面文章Vue全流程--数据代理的理解以及在Vue中的应用-CSDN博客 Vue3中数据的响应式 Vue3使用proxy这个api实现…...
Spring中都应用了哪些设计模式?
好的!以下是您提到的八种设计模式在 Spring 中的简单示例: 1. 简单工厂模式 简单工厂模式通过传入参数来决定实例化哪个类。Spring 中的 BeanFactory 就是简单工厂模式的应用。 示例代码: // 1. 创建接口和具体实现类 public interface A…...
fastjson2学习大纲
一、基础篇 - JSON与fastjson2核心概念 JSON基础 JSON语法规范(RFC 8259)JSON数据类型与Java类型对应关系序列化/反序列化核心概念 fastjson2入门 与fastjson1的主要区别核心优势: 性能提升(JSONB二进制协议)更完善的…...
k8s部署elasticsearch
前置环境:已部署k8s集群,ip地址为 192.168.10.1~192.168.10.5,总共5台机器。 1. 创建provisioner制备器(如果已存在,则不需要) 制备器的具体部署方式,参考我之前的文章:k8s部署rabbitmq-CSDN博客 2. 编写wms-elk-data-sc.yaml配置文件 apiVersion: storage.k8s.io/…...
BS架构(笔记整理)
楔子.基本概念 1.在网络架构中: 服务器通常是集中式计算资源,负责处理和存储数据;客户机是请求这些服务的终端设备,可能是个人电脑或移动设备;浏览器则是客户机上用来与服务器交互的工具,负责展示网页内容…...
从基础到人脸识别与目标检测
前言 从本文开始,我们将开始学习ROS机器视觉处理,刚开始先学习一部分外围的知识,为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本,系统采用Ubuntu20.04,ROS采用noetic。 颜…...
ArcGIS Pro SDK (二十七)自定义许可
ArcGIS Pro SDK (二十七)自定义许可 环境:Visual Studio 2022 + .NET6 + ArcGIS Pro SDK 3.0 文章目录 ArcGIS Pro SDK (二十七)自定义许可1 在Config.xaml中添加扩展配置2 在Module1.cs中实现接口IExtensionConfig1 在Config.xaml中添加扩展配置 <modules><inse…...
一、kubernetes k8s
k8s概述: k8s的全称:kubernetes k8s k8s的版本:1.30 1.20------------用的最多的版本,1.18-1.21 1.24------------>k8s的镜像不再使用docker,containerd k8s的作用: 用于自动部署,自动扩展和管理“容器化应…...
C#、.Net 中级高级架构管理面试题杂烩
1、简述值类型和引用类型的区别 存储位置:值类型变量直接存储数据的值,通常存储在栈上;引用类型变量存储的是对象在堆上的引用地址。 内存管理:值类型的内存由系统自动管理,当超出作用域时自动释放;引用类…...
ArrayList和LinkedList有什么区别?在什么情况下使用ArrayList更高效?
ArrayList和LinkedList在Java中是两种常用的数据结构,分别基于数组和链表实现。它们在性能、内存使用和适用场景上各有特点。 ArrayList与LinkedList的主要区别 数据结构: ArrayList:基于动态数组实现,元素存储在连续的内存空间…...
KITE提示词框架:引导大语言模型的高效新工具
大语言模型的应用日益广泛。然而,如何确保这些模型生成的内容在AI原生应用中符合预期,仍是一个需要不断探索的问题。以下内容来自于《AI 原生应用开发:提示工程原理与实战》一书(京东图书:https://item.jd.com/1013604…...
Spring 整合 MyBatis:核心知识点详解
一、Spring 整合 MyBatis 的优势 依赖注入:Spring 的 IOC 容器可以管理 MyBatis 的组件(如 SqlSessionFactory、Mapper 接口等),减少手动创建对象的繁琐。 事务管理:Spring 提供了声明式事务管理,可以轻松…...
centos docker安装
一、前置条件 安装gcc和c: yum -y install gcc yum -y install gcc-c 二、卸载旧版本 如果之前安装过Docker,需要先卸载旧版本: sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logr…...
推荐一款 免费的SSL,自动续期
支持自动续期 、泛域名 、可视化所有证书时效性 、可配置CDN 的一款工具。免费5个泛域名和1个自动更新。 链接 支持:nginx、通配符证书、七牛云、腾讯云、阿里云、CDN、OSS、LB(负载均衡) 执行自动部署脚本 提示系统过缺少crontab 安装cro…...
python-leetcode 24.回文链表
题目: 给定单链表的头节点head,判断该链表是否为回文链表,如果是,返回True,否则,返回False 输入:head[1,2,2,1] 输出:true 方法一:将值复制到数组中后用双指针法 有两种常用的列表实现&#…...
利用kali linux 进行自动化渗透测试
本方案旨在自动化创建渗透测试全流程 一、架构 1.智能信息收集体系 class IntelligentOSINT:def __init__(self, target):self.target targetself.intelligence_sources [OSINT_Platforms,DeepWeb_Crawlers, SocialMedia_Trackers,ML_Correlation_Engine]def advanced_col…...
蓝桥杯试题:冒泡排序 选择排序
一、问题描述 在一个神秘的岛屿上,有一支探险队发现了一批宝藏,这批宝藏是以整数数组的形式存在的。每个宝藏上都标有一个数字,代表了其珍贵程度。然而,由于某种神奇的力量,这批宝藏的顺序被打乱了,探险队…...
curl与telnet的区别
协议支持:curl支持多种协议,如HTTP、HTTPS、FTP等,而telnet主要用于基于TCP协议的连接。 功能:curl是一个功能强大的工具,可以用来发送各种HTTP请求、下载文件等,而telnet主要用于在远程服务器上进行简单的…...
防火墙综合练习2
准备阶段 实验拓扑图如下: 试验要求如下: 需求一:完成相关配置 需求二:配置DHCP协议 需求三:防火墙安全区域配置 需求四:防火墙地址组信息 需求五:管理员 需求六:用户认证…...
leetcode_26删除有序数组中的重复项
1. 题意 给定一个重复数组,删除其中的重复项目。 2. 题解 双指针 一个指针指向有序不重复数组的最后一个数,另外一个数遍历整个数组,若两个指针对应用的数不相同,有序数组的指针右移,将数填入。 代码一 class Sol…...
SQLServer的创建,表创建,主键,约束,模糊查询
设置 注意: 设置完成之后 重新启动 创建数据库 注意: 这个目标路径必须要有该文件名的文件夹 -- 指向 master 数据库,告诉它我们要创建一个新的数据库操作了 use master go-- 创建数据库 create database StudentManageDB on primary (-- 以下四个组成部分缺一不可…...
钉钉位置偏移解决,钉钉虚拟定位打卡
虚拟定位打卡工具 一,介绍免费获取工具 一,介绍 提到上班打卡,职场人的内心戏估计能拍成一部连续剧。打卡,这俩字仿佛自带“紧箍咒”,让无数打工人又爱又恨。想象一下,你气喘吁吁地冲进办公室,…...
自有服务与软件包
—— 小 峰 编 程 目录 编辑 一、自有服务概述 二、systemctl管理服务命令 1、显示服务 2、查看启动和停止服务 3、服务持久化 三、常用自有服务(ntp,firewalld,crond) 1、ntp时间同步服务 1)NTP同步服务器原理 2)到哪里去找NPT服务…...
PHP之hyperf学习笔记
Hyperf Model,Dao,Service,Contronller 路由 使用文件来配置路由,就是和laravel一样的 Router::addGroup(["middleware" > ["web", "auth"],"namespace" > "Hyperf\HttpServer\Contr…...
C++STL(六)——list模拟
目录 本次所需实现的三个类一、结点类的模拟实现构造函数 二、迭代器类的模拟实现为什么有迭代器类迭代器类的模板参数说明构造函数运算符的重载- -运算符的重载和!运算符的重载*运算符的重载->运算符的重载引入模板第二个和第三个参数 三、list的模拟实现3.1 默认成员函数构…...
Spring MVC 拦截器(Interceptor)与过滤器(Filter)的区别?
1、两者概述 拦截器(Interceptor): 只会拦截那些被 Controller 或 RestController 标注的类中的方法处理的请求,也就是那些由 Spring MVC 调度的请求。过滤器(Filter): 会拦截所有类型的 HTTP …...
MySQL查询主从同步状态
在MySQL中,监控和检查主从复制(Master-Slave replication)的状态是非常重要的,这有助于确保数据的一致性和完整性。以下是一些常用的方法,可以帮助你查询MySQL的主从数据同步状态: 1. 查看主服务器状态 首…...
docker 安装 --在线方式
第一步: #!/bin/bash sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo sudo sed -i -e /mirrors.cloud.aliyuncs.com/d -e /mirrors.aliyuncs.com/d /etc/yum.repos.d/CentOS-Base.repo sudo curl -o /etc/yum.repo…...
Linux系统-centos防火墙firewalld详解
Linux系统-centos7.6 防火墙firewalld详解 1 firewalld了解 CentOS 7.6默认的防火墙管理工具是firewalld,它取代了之前的iptables防火墙。firewalld属于典型的包过滤防火墙或称之为网络层防火墙,与iptables一样,都是用来管理防火墙的工具&a…...
物联网软件开发与应用方向应该怎样学习,学习哪些内容,就业方向是怎样?(文末领取整套学习视频,课件)物联网硬件开发与嵌入式系统
随着物联网技术的飞速发展,物联网软件开发与应用方向成为了众多开发者关注的焦点。那么,如何在这个领域中脱颖而出呢?本文将为你提供一份详细的学习指南,帮助你从零开始,逐步掌握物联网软件开发与应用的核心技能。 一…...
【大模型】DeepSeek与chatGPT的区别以及自身的优势
目录 一、前言二、核心技术对比2.1 模型架构设计2.1.1 ChatGPT的Transformer架构2.1.2 DeepSeek的混合架构 2.2 训练数据体系2.2.1 ChatGPT的数据特征2.2.2 DeepSeek的数据策略 三、应用场景对比3.1 通用场景表现3.1.1 ChatGPT的强项领域3.2.2 DeepSeek的专项突破 3.3 响应效率…...
常用的python库-安装与使用
常用的python库函数 yield关键字openslide库openslide库的安装-linuxopenslide的使用openslide对象的常用属性 cv2库numpy库ASAP库-multiresolutionimageinterface库ASAP库的安装ASAP库的使用 concurrent.futures.ThreadPoolExecutorxml.etree.ElementTree库skimage库PIL.Image…...
qt widget和qml界面集成到一起
将 Qt Widgets 和 QML 界面集成在一起可以利用 QQuickWidget 或 QQuickView。以下是基本步骤: 使用 QQuickWidget 创建 Qt Widgets 项目: 创建一个基于 Widgets 的应用程序。添加 QQuickWidget: 在你的窗口或布局中添加 QQuickWidget。 例如,可以在 QMainWindow 中使用: …...
mybatis 是否支持延迟加载?延迟加载的原理是什么?
1. MyBatis 是否支持延迟加载? 是的,MyBatis 支持延迟加载。延迟加载的主要功能是推迟数据加载的时机,直到真正需要时再去加载。这种方式能提高性能,尤其是在处理关系型数据时,可以避免不必要的数据库查询。 具体来说…...
MariaDB MaxScale实现mysql8主从同步读写分离
一、MaxScale基本介绍 MaxScale是maridb开发的一个mysql数据中间件,其配置简单,能够实现读写分离,并且可以根据主从状态实现写库的自动切换,对多个从服务器能实现负载均衡。 二、MaxScale实验环境 中间件192.168.121.51MaxScale…...
【图片转换PDF】多个文件夹里图片逐个批量转换成多个pdf软件,子文件夹单独合并转换,子文件夹单独批量转换,基于Py的解决方案
建筑设计公司在项目执行过程中,会产生大量的设计图纸、效果图、实景照片等图片资料。这些资料按照项目名称、阶段、专业等维度存放在多个文件夹和子文件夹中。 操作需求:为了方便内部管理和向客户交付完整的设计方案,公司需要将每个项目文件…...
基于logback+fastjson实现日志脱敏
一、需求背景 日常工作中,必不可免的会将一些敏感信息,如用户名、密码、手机号、身份证号、银行账号等等打印出来,但往往为了安全,这些信息都需要进行脱敏。脱敏实际就是用一些特殊字符来替换部分值。 JSON 和 JSONObject Fastj…...
13.10 统一配置管理中心:TranslationChain 架构的简洁配置管理方案
统一配置管理中心:TranslationChain 架构的简洁配置管理方案 1. 集中式配置文件设计 config/settings.yaml: # 多环境配置开关 env: production # development|test|production# 模型管理中心 models:openai:class: langchain_openai.ChatOpenAIparams...
deepseek大模型集成到idea
1 下载插件 安装CodeGPT打开 IntelliJ IDEA,鼠标点击左上角导航栏,File --> Setting 2 申请API key 3 配置deepseek 在 Settings 界面中的搜索框中,搜索 CodeGPT,路径 Tools --> CodeGPT --> Providers --> 如下一…...
Cocos2d-x 游戏开发-打包apk被默认自带了很多不必要的权限导致apk被报毒,如何在Cocos 2d-x中强制去掉不必要的权限-优雅草卓伊凡
Cocos2d-x 游戏开发-打包apk被默认自带了很多不必要的权限导致apk被报毒,如何在Cocos 2d-x中强制去掉不必要的权限-优雅草卓伊凡 实战操作 去除权限 要在 Cocos2d-x 开发的游戏中去掉 APK 自带权限,可以按照以下步骤操作: 编辑 AndroidMa…...
gitlab多项目流水线
背景是我有多个项目,希望其中一个项目被触发的时候,联动另外一个项目自动打包。然后我就看文档尝试操作了一下,所以有本文。 官方文档参考:https://gitlab.cn/docs/14.5/jh/ci/pipelines/multi_project_pipelines.html 不知道是不…...
GWO优化决策树回归预测matlab
灰狼优化算法(Grey Wolf Optimizer,简称 GWO)是一种群智能优化算法,由澳大利亚格里菲斯大学的 Mirjalii 等人于 2014 年提出。该算法的设计灵感源自灰狼群体的捕食行为,核心思想是模仿灰狼社会的结构与行为模式。 在本…...
2025影视泛目录站群程序设计_源码二次开发新版本无缓存刷新不变实现原理
1. 引言 本设站群程序计书旨在详细阐述苹果CMS泛目录的创新设计与实现,介绍无缓存刷新技术、数据统一化、局部URL控制及性能优化等核心功能,以提升网站访问速度和用户体验。 2. 技术概述 2.1 无缓存刷新技术 功能特点: 内容不变性&#x…...
在Linux上创建虚拟网卡
在 Linux 上创建虚拟网卡可以通过多种方式进行,常见的方式是使用 ip 命令来配置虚拟网卡。以下是一个简单的步骤指南,用于创建虚拟网卡: 步骤 1: 查看现有的网络接口 首先,查看当前网络接口的状态,可以使用以下命令&…...
JVM 类加载子系统在干什么?
JVM 类加载子系统是什么? 类加载子系统(Class Loader Subsystem)是 JVM 负责 加载、链接和初始化 .class 文件的组件。它的主要作用是将字节码文件加载进 JVM 并准备执行。 类加载器(ClassLoader)是 字节码的搬运工&…...
STM32的HAL库开发---高级定时器---互补输出带死区实验
一、互补输出简介 互补输出:OCx输出高电平,则互补通道OCxN输出低电平。OCx输出低电平,则互补通道OCxN输出高电平。 带死区控制的互补输出:OCx输出高电平时,则互补通道OCxN过一会再输出输出低电平。这个时间里输出的电…...
AntDesign X 报错:Cannot read properties of undefined (reading ‘_context‘)
解决: Cannot read properties of undefined (reading _context) 报错问题 我是基于umi的前端工程,react版本18.2, package.json,全部安装完之后的 "react": "^18.2.0", "ant-design/x": "^1…...
Day62_补20250210_图论part6_108冗余连接|109.冗余连接II
Day62_20250210_图论part6_108冗余连接|109.冗余连接II 108冗余连接 【把题意转化为并查集问题】 题目 有一个图,它是一棵树,他是拥有 n 个节点(节点编号1到n)和 n - 1 条边的连通无环无向图(其实就是一个线形图&am…...