提交额外资源

This commit is contained in:
2025-10-16 20:17:38 +08:00
parent 7dac2b8c7d
commit 9b02fea0c0
496 changed files with 68700 additions and 0 deletions

10
build/extraResources/java/.gitignore vendored Normal file
View File

@@ -0,0 +1,10 @@
# 自动生成的配置文件
application.yml
# 运行时端口记录
.running-port
# 日志文件
logs/
*.log

View File

@@ -0,0 +1,74 @@
==========================================
NPQS9100 Java 后端服务说明
==========================================
一、目录结构
----------------------------------------
entrance.jar - Spring Boot 应用程序
application.yml - 应用配置文件(自动生成)
application.yml.template - 配置模板
kill-java-port.bat - 智能清理Java端口占用紧急用
.running-port - 运行时端口记录(自动生成,勿删除)
二、自动管理
----------------------------------------
正常情况下Java 后端服务由主应用自动管理:
- 应用启动时自动启动 Java 服务
- 应用关闭时自动停止 Java 服务
- 无需手动操作
三、端口智能管理
----------------------------------------
- Java 服务默认使用端口18092
- 如果 18092 被占用自动尝试18093, 18094, ...
- 启动成功后会记录实际端口到 .running-port 文件
- kill-java-port.bat 会自动识别正确的端口进行清理
四、手动清理工具
----------------------------------------
如果应用异常退出Java 进程可能残留,导致:
- 端口被占用,无法再次启动
- 可以运行 kill-java-port.bat 清理残留进程
使用方法:
1. 双击运行kill-java-port.bat
2. 脚本会自动识别实际使用的端口
3. 清理完成后即可重新启动应用
五、安全说明
----------------------------------------
⚠️ 进程停止安全性:
- 应用自动停止时,只会停止应用自己启动的 Java 进程
- 通过进程引用精确停止,不会影响其他 Java 应用
- kill-java-port.bat 只清理占用特定端口的进程
- 完全不会影响您电脑上的其他 Java 程序
⭐ 端口冲突处理:
- 如果您的电脑上有其他应用占用了 18092 端口
- 本应用会自动切换到其他端口18093, 18094...
- kill-java-port.bat 会自动识别实际端口,精确清理
六、常见问题
----------------------------------------
Q: Java 服务无法启动?
A: 运行 kill-java-port.bat 清理残留进程
Q: 端口被占用怎么办?
A: 应用会自动切换端口,无需手动处理
Q: 如何查看 Java 日志?
A: 启动应用后,日志窗口会实时显示 Java 输出
Q: 配置文件在哪里?
A: application.yml 由应用自动生成,请勿手动修改
==========================================
南京灿能电气自动化有限公司
2025
==========================================

View File

@@ -0,0 +1,116 @@
server:
port: 18092
spring:
application:
name: entrance
datasource:
druid:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:{{MYSQL_PORT}}/pqs9100?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true
username: root
password: {{MYSQL_PASSWORD}}
#初始化建立物理连接的个数、最小、最大连接数
initial-size: 5
min-idle: 5
max-active: 50
#获取连接最大等待时间,单位毫秒
max-wait: 60000
#链接保持空间而不被驱逐的最长时间,单位毫秒
min-evictable-idle-time-millis: 300000
validation-query: select 1
test-while-idle: true
test-on-borrow: false
test-on-return: false
pool-prepared-statements: true
max-pool-prepared-statement-per-connection-size: 20
#mybatis配置信息
mybatis-plus:
mapper-locations: classpath*:com/njcn/**/mapping/*.xml
#别名扫描
type-aliases-package: com.njcn.gather.system.dictionary.pojo.po,com.njcn.gather.machine.pojo.po
configuration:
#驼峰命名
map-underscore-to-camel-case: true
#配置sql日志输出
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
#关闭日志输出
# log-impl: org.apache.ibatis.logging.nologging.NoLoggingImpl
global-config:
db-config:
#指定主键生成策略
id-type: assign_uuid
socket:
source:
ip: 127.0.0.1
port: 62000
device:
ip: 127.0.0.1
port: 61000
webSocket:
port: 7777
#源参数下发,暂态数据默认值
Dip:
#暂态前时间s
fPreTime: 2f
#写入时间s
fRampIn: 0.001f
#写出时间s
fRampOut: 0.001f
#暂态后时间s
fAfterTime: 3f
Flicker:
waveFluType: CPM
waveType: SQU
fDutyCycle: 50f
log:
homeDir: {{APP_DATA_PATH}}\logs
commonLevel: info
report:
template: {{APP_DATA_PATH}}\template
reportDir: {{APP_DATA_PATH}}\report
data:
homeDir: {{APP_DATA_PATH}}\data
qr:
cloud: http://pqmcc.com:18082/api/file
dev:
name: njcn
password: Pqs@12345678
port: 21
path: /etc/qrc.bin
gcDev:
name: root
password: Pqs@12345678
port: 21
path: /emmc/qrc.bin
db:
type: mysql
# 比对录波需要的配置,晚点再做优化
# 系统配置
power-quality:
# 文件读取配置
reading:
encoding: GBK # 文件编码(支持中文)
# 计算参数
calculation:
sampling:
default-rate: 256 # 默认采样率(每周波采样点数)
harmonic-times: 50 # 谐波次数
ib-add: false # 电流基波叠加标志
uharm-add: false # 电压谐波叠加标志
# 激活配置
activate:
private-key: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCcUyYhVqczGxblL+o/xZzF/8nf+LjrfUE/dS1aRHM7uMDD0cgCArhjtfneFePrMxt+Z7W8yNBzSarub8qsfhaVNikV7Es7oaeTygfjQXTi2n4AFkir3fM07J08RpWhl5M8f8uWTCuvFUYAw00gq55typqmnbkmJa2VIUy/iQf+cMCP7abz4/jNhUzUR3qA7TV4oMRgTdIEDUp63YF8dOC+JH8XxYrCVeHXV6fLCwmesdMzl0lB2VTEKMfLbXhOmF5g7P9y/16VCcN8UBuZlbyYfn+GAxJOSbeHi5HshOKfoSuD7Jz+3WQZpNavOWjIFExKIU38/CvnJCOP7XBCqpSTAgMBAAECggEAYeWokWRE3TpvwiOZnUpR/aVMdVi75a3ROL5XIpqPV61B+t/bU3cEpl0GF9C5pUeiRi0IoStZb3mI9D1KPW/REKyUWkhabQO1gFYbTnRlkNOn6MILzKX4cwJjDaZeeo4EBPU7N+qHyOOXrU6hdH5FfxhMdV983ajm5eeuupxER1C2kAcIklTeVpTX6EKOgZb5LBp5ssOVm2P42pOauvcRozRcvZmqnErXmukv0H4l3EVNt4rHpTn9riHUC63e8JfiYzVaF6zuNUxv6nHEft0/SRMw11XSTnNfDzcKqgjz6ksFBS/6eQQYKESk+ONC53HUuYHFAknkwsPupDCT2W8FIQKBgQDLHT/xCU3nxGr4vFKBDNaO2D5oK20ECbBO4oDvLWWmQG7f+6TsMy8PgVdMnoL4RfqGlwFAKEpS6KVFHnBVqnNEhcdy9uCI7x7Xx8UnyUtxj1EDTm76uta9Ki9OrlqB6tImDM9+Ya3vGktW37ht4WOx2OsJRhG1dbf6RLwFlH7DWwKBgQDFBxvi5I1BR6hg6Tj7xd2SqOT2Y+BED3xuSYENhWbmMhLJDResaB7mjztbxlYaY2mOE0holWm2uDmVFFhMh4jYXik4hYH8nmDzq9mDpZCZ9pyjYqnAP8THoAa8EbgrUWB8A6BPH4iL3KbMnBfBKY0pIr2xrvnjQjNBAgta7KDRKQKBgCe6oe4wxrdF2TKsC2tIqpMoQxS3Icy/ZGgZr+SYuaBKTCWtoDW/UT40K3JGMxIDBhzbXphBCUCsVt9tM8Xd4EwP6tJW7dZ7B0pnve2pVwNwaAVAiz6p2yUHIle+jN+Koe5lZRSwYIg7WW81tWpwwsJfzqFyvjYDP6hJV4mz4ROvAoGAaRcdnKvjXApomShMqJ4lTPChD3q+SA8qg3jZSOj6tZXHx00gb2kp8jg7pPvpOTIFPy6x1Ha9aCRjMk0ju84fA6lVuzwa1S907wOehUVuF3Eeo1cgy9Y3k3KbpPyeixxgpkUY4JslLdSHc2NemD0dee951qhJyRmqVOZOQDUuoeECgYEAqBw2cAFk3vM97WY06TSldGA8ajVHx3BYRjj+zl62NTQthy8fw3tqxb3c5e8toOmZWKjZvDhg2TRLhsDDQWEYg3LZG87REqVIjgEPcpjNLidjygGX8n3JF2o0O5I/EMvl0s/+LVQONfduOBvhwDqr8QNisbLsyneiAq7umewMolo="
public-key: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnFMmIVanMxsW5S/qP8Wcxf/J3/i4631BP3UtWkRzO7jAw9HIAgK4Y7X53hXj6zMbfme1vMjQc0mq7m/KrH4WlTYpFexLO6Gnk8oH40F04tp+ABZIq93zNOydPEaVoZeTPH/LlkwrrxVGAMNNIKuebcqapp25JiWtlSFMv4kH/nDAj+2m8+P4zYVM1Ed6gO01eKDEYE3SBA1Ket2BfHTgviR/F8WKwlXh11enywsJnrHTM5dJQdlUxCjHy214TpheYOz/cv9elQnDfFAbmZW8mH5/hgMSTkm3h4uR7ITin6Erg+yc/t1kGaTWrzloyBRMSiFN/Pwr5yQjj+1wQqqUkwIDAQAB"

Binary file not shown.

View File

@@ -0,0 +1,115 @@
@echo off
chcp 65001 >nul
color 0E
title 清理NPQS9100 Java端口占用
cls
echo ==========================================
echo 清理 NPQS9100 Java 端口占用
echo ==========================================
echo.
REM 获取Java目录脚本所在目录
set JAVA_HOME=%~dp0
cd /d "%JAVA_HOME%"
REM 读取实际运行的端口
set PORT_FILE=.running-port
set JAVA_PORT=
if exist "%PORT_FILE%" (
set /p JAVA_PORT=<"%PORT_FILE%"
echo [√] 检测到运行记录:端口 %JAVA_PORT%
echo.
) else (
echo [!] 未找到运行记录文件,使用默认端口 18092
echo.
set JAVA_PORT=18092
)
echo [1] 检查端口 %JAVA_PORT% 占用情况...
echo.
REM 查找占用该端口的连接
netstat -ano | findstr ":%JAVA_PORT%" > "%TEMP%\java_port.txt"
if %errorlevel% equ 0 (
echo 发现以下端口 %JAVA_PORT% 连接:
echo ----------------------------------------
type "%TEMP%\java_port.txt"
echo ----------------------------------------
echo.
echo [2] 提取进程ID并结束进程...
echo.
REM 提取所有LISTENING状态的PID
for /f "tokens=5" %%a in ('netstat -ano ^| findstr ":%JAVA_PORT%" ^| findstr "LISTENING"') do (
if not "%%a"=="0" (
echo 正在结束进程 PID: %%a
taskkill /F /PID %%a 2>nul
if errorlevel 1 (
echo [失败] 无法结束进程 %%a
) else (
echo [成功] 已结束进程 %%a
)
)
)
REM 如果还有其他状态的连接,也尝试结束
for /f "tokens=5" %%a in ('netstat -ano ^| findstr ":%JAVA_PORT%" ^| findstr /V "LISTENING"') do (
if not "%%a"=="0" (
echo 正在结束进程 PID: %%a
taskkill /F /PID %%a 2>nul
if errorlevel 1 (
echo [已结束或无权限] 进程 %%a
) else (
echo [成功] 已结束进程 %%a
)
)
)
echo.
echo [3] 清理完成
REM 等待2秒让进程完全释放
timeout /t 2 /nobreak >nul
echo.
echo [4] 再次检查端口 %JAVA_PORT%...
netstat -ano | findstr ":%JAVA_PORT%"
if errorlevel 1 (
echo [√] 端口 %JAVA_PORT% 已完全释放
REM 删除端口记录文件
if exist "%PORT_FILE%" (
del "%PORT_FILE%"
echo [√] 已清理端口记录文件
)
) else (
echo [!] 仍有连接存在可能是TIME_WAIT状态会自动释放
)
) else (
echo [√] 没有发现占用端口 %JAVA_PORT% 的进程
REM 删除端口记录文件
if exist "%PORT_FILE%" (
del "%PORT_FILE%"
echo [√] 已清理端口记录文件
)
)
REM 清理临时文件
if exist "%TEMP%\java_port.txt" del "%TEMP%\java_port.txt"
echo.
echo ==========================================
echo 清理完成
echo ==========================================
echo.
echo 说明:
echo - 此脚本只清理 NPQS9100 应用使用的 Java 端口
echo - 不会影响您电脑上的其他 Java 应用
echo.
pause