单机开机无感全自动进入B\S架构系统
单机开机无感全自动进入B\S架构系统
- 标题:单机用jar包启动项目bat(批处理)不弹黑窗口,并设置开机自启,打开浏览器,访问系统。
- 引言:在实际工作中,遇到单机部署的情况,如今我们微服务的架构如何在单机本上运行,并且让用户无感,自动进入网页系统,那应该怎么做?
- 正文
- 1:jar包启动服务,存在黑窗口,并自动进入系统(初始条件)
- 2:开机自启动
- 3:隐藏9个服务黑窗口
- 4:隐藏启动bat的黑窗口
- 知识扩展
标题:单机用jar包启动项目bat(批处理)不弹黑窗口,并设置开机自启,打开浏览器,访问系统。
引言:在实际工作中,遇到单机部署的情况,如今我们微服务的架构如何在单机本上运行,并且让用户无感,自动进入网页系统,那应该怎么做?
正文
1:jar包启动服务,存在黑窗口,并自动进入系统(初始条件)
因工作需要,现有以下场景,一套微服务的jar包需要在windows系统下运行,并且不采用docker的形式,现已投入到实际中使用,所以写下此篇文章供其他人使用及自己后续拿来参考。
本次部署的有注册中心 配置中心 用户中心 auth zuul web 附件中心 工作流 业务系统
对应有9个jar包,分别用9个bat命令处理
例:
01-eureka.bat
D:\xxx\xxx/jdk1.8.0_xx\bin\java -Xmx512m -jar eureka.jar
注释:这里表示使用jar命令启动jar包
02-config.bat
D:\xxx\xxx/jdk1.8.0_xx\bin\java -Xmx512m -jar config.jar
注释:这里表示使用jar命令启动jar包
以此类推,写完9个bat处理,因为各个服务启动直接的关系,需要间隔一段时间
所以9个bat脚本写完之后,可以写一个
10-batStart.bat
@echo off
start 01-eureka.bat
timeout /T 20 /NOBREAKstart 02-config.bat
timeout /T 30 /NOBREAK
....
"C:\Program Files\Mozilla Firefox\firefox"
@echo off表示执行了这条命令后关闭所有命令(包括本身这条命令)的回显。而echo off命令则表示关闭其他所有命令(不包括本身这条命令)的回显,@的作用就是关闭紧跟其后的一条命令的回显
注释:这里表示,关闭回显,启动刚刚提到的第一个bat脚本,启动eureka,等待20秒后,启动第二个脚本配置中心,等待30秒后,启动后续的脚本,依次启动完九个脚本后,打开浏览器。
之后,设置打开浏览器的初始页面,将其设置为系统的登录地址例如:localhost/login
这样设置后,可实现效果,当点击10-batStart.bat之后,9个服务的黑窗口间隔20或者30秒依次开启,最终打开浏览器,进入系统的登录页。
2:开机自启动
使用windows+R,打开运行窗口,输入
shell:startup
打开如下文件夹,将10-batStart.bat拖进去
可实现开机自启动服务,并打开浏览器进入系统。
但是这样会存在以下问题,服务启动成功,但是黑窗口依旧存在,如果不小心关掉,那系统将会不可用。
3:隐藏9个服务黑窗口
我们已经写好01-eureka.bat|02-config.bat…,接下来需要为这几个窗口隐藏掉,用到的脚本为vbs(Microsoft Visual Basic Script Edition 微软公司可视化BASIC脚本版)。
例:新建脚本
01-eureka.vbs
set ws = WScriot.CreateObject("Wscript.Shell")
ws.run "D:\xxx\xxx\01-eureka.bat",0
这样即可将01-eureka.bat启动的黑窗口隐藏掉。
02-config.vbs
set ws = WScriot.CreateObject("Wscript.Shell")
ws.run "D:\xxx\xxx\02-config.bat",0
这样即可将02-config.bat启动的黑窗口隐藏掉。
依次为9个bat的脚本写vbs脚本。
原本的10-batStart.bat留着,还有用(运维阶段使用)
新建11-vbsStart.bat
@echo off
chcp 65001
echo 系统启动中...& echo 系统启动成功后自动开启火狐浏览器 & 请勿关闭此窗口,系统启动成功后此窗口自动关闭。d:
cd xxx\xxx(这里进入bat及vbs脚本所在文件夹)cscript D:\xxx\xxx\01-eureka.vbs
timeout /T 20 /NOBREAKcscript D:\xxx\xxx\02-config.vbs
timeout /T 20 /NOBREAK.....
"C:\Program Files\Mozilla Firefox\firefox"
注释:chcp 65001 指的是UTF-8编码 d: 及cd xx\xx是进入到命令可执行的文件夹下,不然默认在CMD窗口默认C盘下,会执行失败。
启动eureka的vbs脚本,实际vbs脚本执行的就是bat,只不过隐藏了黑窗口。依次执行完9个服务,打开浏览器,进入系统。
可以将11-vbsStart.bat发送快捷方式至桌面,并修改一个图标,
这样双击桌面即可自动启动系统并且,隐藏掉9个服务的窗口,但是这样依旧有一个问题,就是当前的bat存在黑窗口。
4:隐藏启动bat的黑窗口
到了这一步,已经理解了上边内容的相信已经有了答案,那就是为11-vbsStart.bat写一个vbs脚本,并且再写一个开机启动的bat用来启动vbs。
11-vbsStart.vbs
set ws = WScriot.CreateObject("Wscript.Shell")
ws.run "D:\xxx\xxx\11-vbsStart.bat",0
开机去黑窗口自启动系统.bat
d:
cd xxx\xxx
cscript D:\xxx\xxx\11-vbxStart.vbs
windows+R
shell:startup
总结:这样完成之后,目录为以下列表,可实现电脑重启后,黑窗口一闪而过(0.1秒),大约等待2分钟后,自动开启浏览器,并进入系统页面。
01-eureka.bat
01-eureka.vbs
02-config.bat
02-config.vbs
03-user.bat
03-user.vbs
04-auth.bat
04-auth.vbs
05-zuul.bat
05-zuul.vbs
06-web.bat
06-web.vbs
07-atta.bat
07-atta.vbs
08-flow.bat
08-flow.vbs
09-project.bat
09-project.vbs
10-batStart.bat
10-batStart.vbs
11-vbsStart.bat
11-VbsStart.vbs
开机去黑窗口自启动系统.bat
知识扩展
批处理命令介绍。
1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文本文件编辑工具创建和修改。
2.批处理是一种简单的程序,可以用 if 和 goto 来控制流程,也可以使用 for 循环。
3.批处理的编程能力远不如C语言等编程语言,也十分不规范。
4.每个编写好的批处理文件都相当于一个DOS的外部命令,把它所在的目录放到DOS搜索路径(path)中,即可在任意位置运行。5.C:\AUTOEXEC.BAT 是每次系统启动时都会自动运行的,可以将每次启动时都要运行的命令放入该文件中。
6.大小写不敏感(命令符忽略大小写)
7.批处理的文件扩展名为 .bat 或 .cmd。
8.在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe来运行该文件。
vbs命令介绍
VBS是基于Visual Basic的脚本语言。VBS的全称是:Microsoft Visual Basic Script Edition。(微软公司可视化BASIC脚本版)。
其语言类似Visual Basic(VB)。
相关文章:

单机开机无感全自动进入B\S架构系统
单机开机无感全自动进入B\S架构系统 标题:单机用jar包启动项目bat(批处理)不弹黑窗口,并设置开机自启,打开浏览器,访问系统。引言:在实际工作中,遇到单机部署的情况,如今…...

大一,如何成为一名fpga工程师?
1、数电(必须掌握的基础),然后进阶学模电(选学), 2、掌握HDL(HDLverilogVHDL)可以选择verilog或者VHDL,建议verilog就行。 3、掌握FPGA设计流程/原理(推…...

MyBatisPlus学习三:Service接口、代码生成器
学习教程 黑马程序员最新MybatisPlus全套视频教程,4小时快速精通mybatis-plus框架 Service接口 简介 在MyBatis-Plus框架中,Service接口的作用是为实体类提供一系列的通用CRUD(增删改查)操作方法。通常情况下,Servi…...

产品经理如何选择城市?
年底,全国性的人口大迁徙即将开始。选择城市,堪称年轻人的“二次投胎”,族望留原籍,家贫走他乡。 古人在选择城市时,主要的考量因素是家族势力,这一点放在当代,大致也成立,如果在老…...

再谈“敏捷”与“瀑布”在产品开发过程中的反思
作为一家专注于软件开发的公司《智创有术》,我们致力于为客户提供创新、高效和可靠的解决方案。通过多年的经验和专业知识,我们已经在行业内建立了良好的声誉,并赢得了客户的信任和支持。 支持各种源码,网站搭建,APP&a…...

设计模式② :交给子类
文章目录 一、前言二、Template Method 模式1. 介绍2. 应用3. 总结 三、Factory Method 模式1. 介绍2. 应用3. 总结 参考内容 一、前言 有时候不想动脑子,就懒得看源码又不像浪费时间所以会看看书,但是又记不住,所以决定开始写"抄书&qu…...
Hive 源码
hive 编译 issue Failed to execute goal com.github.os72:protoc-jar-maven-plugin:3.5.1.1:run (default) on project hive-standalone-metastore: Error resolving artifact: com.google.protobuf:protoc:2.5.0: The following artifacts could not be resolved: com.goog…...

调整几行代码,接口吞吐提升 10 倍,性能调优妙啊!
景 分析过程 总结 背景 公司的一个ToB系统,因为客户使用的也不多,没啥并发要求,就一直没有经过压测。这两天来了一个“大客户”,对并发量提出了要求:核心接口与几个重点使用场景单节点吞吐量要满足最低500/s的要求。 当时一想,500/s吞吐量还不简单。Tomcat按照100个线程…...

MACOS Atrust服务异常
MAC版Atrust服务异常 点击进入办公后出现提示其一: 核心服务未启动,部分功能存在异常,确定重新启动吗? 可能的原因: 1.上次已完全退出客户端 2.核心服务被其他程序优化禁用 点击重新启动后,出现提示&#x…...
LLM大语言模型(四):在ChatGLM3-6B中使用langchain
目录 背景准备工作工具添加LangChain 已实现工具Calculator、Weather Tool配置 自定义工具自定义kuakuawo Agent 多工具使用参考 背景 LangChain是一个用于开发由语言模型驱动的应用程序的框架。它使应用程序能够: 具有上下文意识:将语言模型与上下文源(提示指令&…...

Dubbo入门介绍和实战
1. 引言 Dubbo是一款开源的高性能、轻量级的Java RPC(远程过程调用)框架,旨在解决分布式服务之间的通信问题。本文将介绍Dubbo的基础概念、核心特性以及使用场景,包括实际示例演示。 2. 什么是Dubbo? Dubbo是阿里巴…...

如何实现无人机识别功能
无人机识别算法可以基于不同的传感器和技术,结合多种方法进行实现。以下是一些常见的无人机识别算法和技术: 视觉识别: 图像处理: 使用计算机视觉技术对无人机图像进行处理,包括特征提取、目标检测和跟踪等。深度学习&…...
Python学习笔记(四)流程控制方法
流程控制有三种方法:分支、循环、跳出 流程的控制通过布尔值来实现,分支和循环都需要对一定的条件进行判断,根据判断结果(布尔值)决定下一步要做什么 布尔值通过比较运算符、逻辑运算符来进行判断是True还是False 不…...

【Qt- C++ Qml 交互】
Qt编程指南 VX:hao541022348 ■ 将C对象注册到 QML中,在QML使用C对象■ C对象注册到元对象系统■ Q_INVOKABLE 宏定义是将C 的 函数(方法)声明为元对象系统可调用的函数■ 演示步骤 ■ 将 C类注册到 QML,并在QML声明一…...

ubuntu 20.04 自由切换 python 的版本
问题描述 当前 ubuntu 20.04 默认安装了多个 python 的版本,执行 python 时,默认版本是 Python 2.7.18 zhangszzhangsz:~$ python Python 2.7.18 (default, Jul 1 2022, 12:27:04) [GCC 9.4.0] on linux2 Type "help", "copyright&quo…...

程序性能优化全能手册
本文聊一个程序员都会关注的问题:性能。 当大家谈到“性能”时,你首先想到的会是什么? 是每次请求需要多长时间才能返回? 是每秒钟能够处理多少次请求? 还是程序的CPU和内存使用率高不高? 这些问题基本上…...

LiveSIPB流媒体国网B接口功能-国网B接口服务安装使用说明
LiveSIPB 国网B接口服务安装使用说明 1、服务说明1.1、安装包说明1.2、国网B接口信令服务1.3、国网B接口流媒体服务1.4、配置信令服务(LiveCMS)1.5、配置流媒体服务(LiveSMS) 2、服务运行2.1、Windows2.2、Linux 3、配置设备接入3.1、海康STATE_GRID接入示例 4、平台使用4.1、管…...

利用小红书笔记详情API:为内容运营提供强大的支持
利用小红书笔记详情API,内容运营者可以获得对小红书平台上的笔记内容的深入洞察,从而为其运营工作提供强大的支持。以下是该API如何支持内容运营的几个关键方面: 获取笔记内容与数据: API允许内容运营者直接获取小红书平台上的笔记…...
地理空间分析1——入门Python地理空间分析
写在开头 地理空间分析是一门涉及地球表面数据处理和解释的科学,通过对地理现象的研究,我们可以更深入地了解地球各个角落的关系。Python作为一种功能强大的编程语言,在地理空间分析领域展现了强大的潜力。本文将带您深入了解入门级别的Pyth…...

哈尔滨爆火的背后有什么值得我们学习的,2024普通人如何创业/2024风口行业
这个冬天,“南方小土豆”带火东北冰雪游。“冰城”黑龙江哈尔滨的文旅市场异常火爆,元旦假期3天,哈尔滨市累计接待游客304.79万人次,实现旅游总收入59.14亿元。旅游总收入达到历史峰值。哈尔滨旅游怎么就爆火了?背后究…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...

如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...

抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
Pydantic + Function Calling的结合
1、Pydantic Pydantic 是一个 Python 库,用于数据验证和设置管理,通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发(如 FastAPI)、配置管理和数据解析,核心功能包括: 数据验证:通过…...

针对药品仓库的效期管理问题,如何利用WMS系统“破局”
案例: 某医药分销企业,主要经营各类药品的批发与零售。由于药品的特殊性,效期管理至关重要,但该企业一直面临效期问题的困扰。在未使用WMS系统之前,其药品入库、存储、出库等环节的效期管理主要依赖人工记录与检查。库…...

2025年- H71-Lc179--39.组合总和(回溯,组合)--Java版
1.题目描述 2.思路 当前的元素可以重复使用。 (1)确定回溯算法函数的参数和返回值(一般是void类型) (2)因为是用递归实现的,所以我们要确定终止条件 (3)单层搜索逻辑 二…...