diff --git a/pom.xml b/pom.xml
index b2b651d83..d82ec636d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -20,7 +20,7 @@
2.5.15
1.13.0
2.1.0
- 1.2.23
+ 1.2.24
1.21
2.3.3
3.0.0
diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index 29d594b95..83925f1c0 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -10,6 +10,7 @@
4.0.0
jar
ruoyi-admin-neuhisutools
+ 1.0.0
web服务入口
@@ -173,7 +174,7 @@
-->
- ${project.artifactId}
+ ${project.artifactId}-${project.version}
\ No newline at end of file
diff --git a/ruoyi-admin/src/main/java/com/neuhis/his/domain/dto/DeadLockRac.java b/ruoyi-admin/src/main/java/com/neuhis/his/domain/dto/DeadLockRac.java
index 1010745d9..227a7af51 100644
--- a/ruoyi-admin/src/main/java/com/neuhis/his/domain/dto/DeadLockRac.java
+++ b/ruoyi-admin/src/main/java/com/neuhis/his/domain/dto/DeadLockRac.java
@@ -50,9 +50,10 @@ public class DeadLockRac {
public DeadLockRac() {
}
- public DeadLockRac(Integer 本进程号SID, String 阻塞SID) {
+ public DeadLockRac(Integer 本进程号SID, String 阻塞SID, String sessionStr) {
this.本进程号SID = 本进程号SID;
this.阻塞SID = 阻塞SID;
+ this.sessionStr = sessionStr;
}
}
diff --git a/ruoyi-admin/src/main/java/com/neuhis/his/service/IOracleSysService.java b/ruoyi-admin/src/main/java/com/neuhis/his/service/IOracleSysService.java
index 63b5e4c9b..b2e71d940 100644
--- a/ruoyi-admin/src/main/java/com/neuhis/his/service/IOracleSysService.java
+++ b/ruoyi-admin/src/main/java/com/neuhis/his/service/IOracleSysService.java
@@ -19,6 +19,8 @@ public interface IOracleSysService {
* slow版本
*/
List getDeadLockSessionV3Slow();
-
+ /**
+ * 杀进程
+ */
void killSession(String sessionStr);
}
diff --git a/ruoyi-admin/src/main/java/com/neuhis/his/service/impl/OracleSysServiceImpl.java b/ruoyi-admin/src/main/java/com/neuhis/his/service/impl/OracleSysServiceImpl.java
index 58ca2a12e..fd2b3626d 100644
--- a/ruoyi-admin/src/main/java/com/neuhis/his/service/impl/OracleSysServiceImpl.java
+++ b/ruoyi-admin/src/main/java/com/neuhis/his/service/impl/OracleSysServiceImpl.java
@@ -10,6 +10,8 @@ import com.neuhis.his.service.IOracleSysService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.compress.utils.Lists;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -21,9 +23,10 @@ import java.util.Map;
@Service
@DataSource(value = DataSourceType.SLAVE)
public class OracleSysServiceImpl implements IOracleSysService {
-
@Resource
private OracleSysMapper oracleSysMapper;
+ @Autowired
+ private JdbcTemplate jdbcTemplate;
@Override
public List getDeadLockSessionV1() {
@@ -33,6 +36,10 @@ public class OracleSysServiceImpl implements IOracleSysService {
@Override
public List getDeadLockSessionV2Rac() {
List deadLockRacs = oracleSysMapper.getDeadLockSessionV2Rac();
+ deadLockRacs.add(new DeadLockRac(1, "根锁为此会话杀我KILL ME or igore", "001"));
+ deadLockRacs.add(new DeadLockRac(5728, "<根锁会话>4903 【SID=4903】的SQL阻塞了本语句[5728]杀掉他", "5728"));
+ deadLockRacs.add(new DeadLockRac(2222, "<根锁会话>1111 【SID=1111】的SQL阻塞了本语句[2222]杀掉他", "5728"));
+ deadLockRacs.add(new DeadLockRac(3333, "<根锁会话>1 【SID=1】的SQL阻塞了本语句[3333]杀掉他", "5728"));
return this.findV2DeadLockRacSessionId(deadLockRacs);
}
@@ -49,13 +56,10 @@ public class OracleSysServiceImpl implements IOracleSysService {
oracleSysMapper.killSession(sessionStr);
}
}catch (Exception e){
- System.out.println("数据库啥死锁异常:"+e.getMessage());
+ System.out.println("数据库杀死锁异常:"+e.getMessage());
}
}
- /**
- * 从进程列表找到,死锁的进程
- */
private List findV2DeadLockRacSessionId(List deadLockRacs) {
//找到有问题的进程
DeadLockRac problematicSession = DeadlockResolver.findProblematicSession(deadLockRacs);
diff --git a/ruoyi-admin/src/main/java/com/neuhis/quartz/task/HisTask.java b/ruoyi-admin/src/main/java/com/neuhis/quartz/task/HisTask.java
index 4ec79991b..20ab18b2c 100644
--- a/ruoyi-admin/src/main/java/com/neuhis/quartz/task/HisTask.java
+++ b/ruoyi-admin/src/main/java/com/neuhis/quartz/task/HisTask.java
@@ -29,6 +29,8 @@ public class HisTask {
OracleSlaveDataAutoPushService oracleSlaveDataAutoPushService;
@Autowired
private IOracleSysService oracleSysService;
+ @Autowired
+ private RuoYiConfig ruoYiConfig;
public void pushData()
{
@@ -38,7 +40,7 @@ public class HisTask {
public void pushData(String apicode)
{
- if (RuoYiConfig.isQuzrtzTask() && jobService.isEnable(JobSwitchConstant.comPatientinfo)) {
+ if (ruoYiConfig.isQuzrtzTask() && jobService.isEnable(JobSwitchConstant.comPatientinfo)) {
log.info("数据推送开始" + DateUtil.format(DateUtil.date(), "yyyy-MM-dd HH:mm:ss"));
oracleSlaveDataAutoPushService.pushData(apicode);
log.info("数据推送结束" + DateUtil.format(DateUtil.date(), "yyyy-MM-dd HH:mm:ss"));
@@ -47,7 +49,7 @@ public class HisTask {
public void pushDataByCompareId(String apicode)
{
- if (RuoYiConfig.isQuzrtzTask() && jobService.isEnable(JobSwitchConstant.comPatientinfo)) {
+ if (ruoYiConfig.isQuzrtzTask() && jobService.isEnable(JobSwitchConstant.comPatientinfo)) {
log.info("数据推送开始" + DateUtil.format(DateUtil.date(), "yyyy-MM-dd HH:mm:ss"));
oracleSlaveDataAutoPushService.pushDataByCompareId(apicode);
log.info("数据推送结束" + DateUtil.format(DateUtil.date(), "yyyy-MM-dd HH:mm:ss"));
@@ -58,10 +60,10 @@ public class HisTask {
* 杀oracle死锁
*/
public void killDeadLockSession() {
- if (RuoYiConfig.isQuzrtzTask()) {
+ if (ruoYiConfig.isQuzrtzTask()) {
log.info("杀oracle死锁开始" + DateUtil.format(DateUtil.date(), "yyyy-MM-dd HH:mm:ss"));
///List deadLocks = oracleSysService.getDeadLockSessionV1();
- ///deadLocks.forEach(deadLock -> HisTask.this.oracleSysService.killSession(deadLock.getSessionStr()));
+ ///deadLocks.forEach(deadLock -> HisTask.this.oracleSysService.killSessionJdbc(deadLock.getSessionStr()));
List sessionV2Rac = oracleSysService.getDeadLockSessionV2Rac();
sessionV2Rac.forEach(deadLock -> HisTask.this.oracleSysService.killSession(deadLock.getSessionStr()));
@@ -74,7 +76,7 @@ public class HisTask {
* */
public void deleteLogData(String tableName,String colName,String days)
{
- if (RuoYiConfig.isQuzrtzTask()) {
+ if (ruoYiConfig.isQuzrtzTask()) {
log.info("日志数据删除开始" + DateUtil.format(DateUtil.date(), "yyyy-MM-dd HH:mm:ss"));
int num = oracleSlaveDataAutoPushService.LogsTimerDel(tableName,colName,days);
log.info("日志数据删除结束,共删除 "+num+" 条日志。" + DateUtil.format(DateUtil.date(), "yyyy-MM-dd HH:mm:ss"));
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java
index 10da47fb4..7f40bc357 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java
@@ -42,6 +42,8 @@ public class SysIndexController extends BaseController
@Autowired
private SysPasswordService passwordService;
+ @Autowired
+ private RuoYiConfig ruoYiConfig;
// 系统首页
@GetMapping("/index")
@@ -60,8 +62,8 @@ public class SysIndexController extends BaseController
mmap.put("footer", footer);
mmap.put("tagsView", tagsView);
mmap.put("mainClass", contentMainClass(footer, tagsView));
- mmap.put("copyrightYear", RuoYiConfig.getCopyrightYear());
- mmap.put("demoEnabled", RuoYiConfig.isDemoEnabled());
+ mmap.put("copyrightYear", ruoYiConfig.getCopyrightYear());
+ mmap.put("demoEnabled", ruoYiConfig.isDemoEnabled());
mmap.put("isDefaultModifyPwd", initPasswordIsModify(user.getPwdUpdateDate()));
mmap.put("isPasswordExpired", passwordIsExpiration(user.getPwdUpdateDate()));
mmap.put("isMobile", ServletUtils.checkAgentIsMobile(ServletUtils.getRequest().getHeader("User-Agent")));
@@ -130,7 +132,7 @@ public class SysIndexController extends BaseController
@GetMapping("/system/main")
public String main(ModelMap mmap)
{
- mmap.put("version", RuoYiConfig.getVersion());
+ mmap.put("version", ruoYiConfig.getVersion());
return "main";
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
index 0cfbfbadb..00807ff2e 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
@@ -1,5 +1,6 @@
package com.ruoyi.web.core.config;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -21,6 +22,8 @@ import springfox.documentation.spring.web.plugins.Docket;
@Configuration
public class SwaggerConfig
{
+ @Autowired
+ private RuoYiConfig ruoYiConfig;
/** 是否开启swagger */
@Value("${swagger.enabled}")
private boolean enabled;
@@ -59,9 +62,9 @@ public class SwaggerConfig
// 描述
.description("描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...")
// 作者信息
- .contact(new Contact(RuoYiConfig.getName(), null, null))
+ .contact(new Contact(ruoYiConfig.getName(), null, null))
// 版本
- .version("版本号:" + RuoYiConfig.getVersion())
+ .version("版本号:" + ruoYiConfig.getVersion())
.build();
}
}
diff --git a/ruoyi-admin/src/main/resources/application-xyzxhis.yml b/ruoyi-admin/src/main/resources/application-xyzxhis.yml
index 705a03930..e232b586b 100644
--- a/ruoyi-admin/src/main/resources/application-xyzxhis.yml
+++ b/ruoyi-admin/src/main/resources/application-xyzxhis.yml
@@ -104,7 +104,7 @@ spring:
# 慢SQL记录
log-slow-sql: true
slow-sql-millis: 1000
- merge-sql: true
+ merge-sql: false #关闭:SQL merge,否则:kill语句报错
wall:
config:
multi-statement-allow: true
@@ -139,8 +139,6 @@ spring:
jackson:
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
-# profiles:
-# active: dev
# 文件上传
servlet:
multipart:
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/config/RuoYiConfig.java b/ruoyi-common/src/main/java/com/ruoyi/common/config/RuoYiConfig.java
index bff315137..4d0030242 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/config/RuoYiConfig.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/config/RuoYiConfig.java
@@ -13,13 +13,13 @@ import org.springframework.stereotype.Component;
public class RuoYiConfig
{
/** 项目名称 */
- private static String name;
+ private String name;
/** 版本 */
- private static String version;
+ private String version;
/** 版权年份 */
- private static String copyrightYear;
+ private String copyrightYear;
/** 实例演示开关 */
private static boolean demoEnabled;
@@ -29,36 +29,36 @@ public class RuoYiConfig
/** 获取地址开关 */
private static boolean addressEnabled;
- private static boolean quzrtzTask;
+ private boolean quzrtzTask;
- public static String getName()
+ public String getName()
{
return name;
}
public void setName(String name)
{
- RuoYiConfig.name = name;
+ this.name = name;
}
- public static String getVersion()
+ public String getVersion()
{
return version;
}
public void setVersion(String version)
{
- RuoYiConfig.version = version;
+ this.version = version;
}
- public static String getCopyrightYear()
+ public String getCopyrightYear()
{
return copyrightYear;
}
public void setCopyrightYear(String copyrightYear)
{
- RuoYiConfig.copyrightYear = copyrightYear;
+ this.copyrightYear = copyrightYear;
}
public static boolean isDemoEnabled()
@@ -86,7 +86,7 @@ public class RuoYiConfig
return addressEnabled;
}
- public void setAddressEnabled(boolean addressEnabled)
+ public static void setAddressEnabled(boolean addressEnabled)
{
RuoYiConfig.addressEnabled = addressEnabled;
}
@@ -123,11 +123,11 @@ public class RuoYiConfig
return getProfile() + "/upload";
}
- public static boolean isQuzrtzTask() {
+ public boolean isQuzrtzTask() {
return quzrtzTask;
}
- public static void setQuzrtzTask(boolean quzrtzTask) {
- RuoYiConfig.quzrtzTask = quzrtzTask;
+ public void setQuzrtzTask(boolean quzrtzTask) {
+ this.quzrtzTask = quzrtzTask;
}
}
diff --git a/start_NeuHis_dev.sh b/start_NeuHis_dev.sh
deleted file mode 100644
index 6b69c5433..000000000
--- a/start_NeuHis_dev.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-APP_NAME=ruoyi-admin-neuhisutools.jar
-PID=$(ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}')
-JVM="-server -Xms1g -Xmx4g -Xmn1g -verbose:gc-XX:+UseConcMarkSweepGC -XX:MaxTenuringThreshold=5 -XX:+ExplicitGCInvokesConcurrent -XX:GCTimeRatio=19 -XX:CMSInitiatingOccupancyFraction=70 -XX:CMSFullGCsBeforeCompaction=0 -Xnoclassgc -XX:SoftRefLRUPolicyMSPerMB=0"
-
-if [ "$PID" != "" ]; then
- echo '================>停止服务..........'
- kill -9 $PID
- sleep 3s
-fi
-
-echo '================>nohup.out日志清空成功.........'
-echo '' > nohup.out
-echo '================>开始重启服务.........'
-
-nohup java $JVM -jar $APP_NAME 2>&1 &
-tail -f nohup.out
-
-
-
-
diff --git a/start_admin_dev.sh b/start_admin_dev.sh
new file mode 100644
index 000000000..1ff8cd6d4
--- /dev/null
+++ b/start_admin_dev.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+APP_NAME=ruoyi-admin-neuhisutools-1.0.0.jar
+PID=$(ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}')
+
+
+#JVM="-server -Xms2g -Xmx8g -Xmn4g -verbose:gc-XX:+UseConcMarkSweepGC -XX:MaxTenuringThreshold=5 -XX:+ExplicitGCInvokesConcurrent -XX:GCTimeRatio=19 -XX:CMSInitiatingOccupancyFraction=70 -XX:CMSFullGCsBeforeCompaction=0 -Xnoclassgc -XX:SoftRefLRUPolicyMSPerMB=0"
+JVM="-server -Xms2g -Xmx8g -Xmn4g -XX:MetaspaceSize=512m -XX:+UseG1GC -XX:MaxGCPauseMillis=100 -XX:+ParallelRefProcEnabled -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=java_heapdump.hprof -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:gc_trace.log -verbose:gc -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M"
+
+
+if [ "$PID" != "" ]; then
+ echo '================>停止服务..........'
+ kill -9 $PID
+ sleep 3s
+fi
+
+echo '================>nohup.out日志清空成功.........'
+echo '' > nohup.out
+echo '================>开始重启服务.........'
+
+nohup java $JVM -jar $APP_NAME --spring.config.location=file:/data/neuhisutools/application.yml 2>&1 &
+tail -f nohup.out
+
+
+
+
diff --git a/stop_NeuHis_dev.sh b/stop_admin_dev.sh
similarity index 84%
rename from stop_NeuHis_dev.sh
rename to stop_admin_dev.sh
index 8d68fd6cc..c19cf7f13 100644
--- a/stop_NeuHis_dev.sh
+++ b/stop_admin_dev.sh
@@ -1,6 +1,6 @@
#!/bin/bash
echo '================>停止服务开始..........'
-APP_NAME=ruoyi-admin-neuhisutools.jar
+APP_NAME=ruoyi-admin-neuhisutools-1.0.0.jar
PID=$(ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}')
if [ "$PID" != "" ]; then
echo '================>停止服务结束..........'