From 4616f1b7006f08ef192d4332c6da6b80ef8723d5 Mon Sep 17 00:00:00 2001 From: waner Date: Tue, 20 May 2025 10:30:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 27 ++++++++++++++--- src/main/java/com/Sample/TestCert.java | 12 ++------ src/main/java/com/sunyard/SydApi.java | 1 - .../java/racal/sunyard/main/SydApi4j.java | 30 ++++++++----------- src/test/java/sample/Test4NongxinCW.java | 28 ++++++++--------- 5 files changed, 52 insertions(+), 46 deletions(-) diff --git a/pom.xml b/pom.xml index ddb6e24..8cd5d01 100644 --- a/pom.xml +++ b/pom.xml @@ -14,8 +14,8 @@ 3.4.2 UTF-8 UTF-8 - 1.6 - 1.6 + 1.8 + 1.8 @@ -38,6 +38,16 @@ com.sunyard proto 1.1.20221215 + + + cn.hutool + hutool-core + + + org.codehaus.groovy + groovy-all + + @@ -75,11 +85,11 @@ + cn.hutool hutool-all - 5.8.4.M1 - + 5.8.38 @@ -94,6 +104,13 @@ gson 2.13.1 + + + + + + + ch.qos.logback logback-classic @@ -119,6 +136,7 @@ org.codehaus.groovy groovy-eclipse-compiler 2.9.2-01 + true @@ -126,6 +144,7 @@ org.apache.maven.plugins maven-compiler-plugin 3.3 + compile diff --git a/src/main/java/com/Sample/TestCert.java b/src/main/java/com/Sample/TestCert.java index 5464c25..f13fc39 100644 --- a/src/main/java/com/Sample/TestCert.java +++ b/src/main/java/com/Sample/TestCert.java @@ -10,7 +10,7 @@ import java.io.IOException; import java.util.*; public class TestCert { - public static void main(String[] args) throws InterruptedException { + public static void main(String[] args) throws Exception { StopWatch stopWatch = new StopWatch(); stopWatch.start(); System.out.println("-----------start---------------"); @@ -29,15 +29,7 @@ public class TestCert { String bkCode = map.get("bkcode"); Map snmpMap = readFileToMap(snmpInfo); Gson gson = new Gson(); - try { - sydApi4j.importCertToServers(ipList, timeout, cert, bkCode, gson.toJson(snmpMap)); - } catch (Exception e) { - System.out.println(); - System.out.println(); - System.out.println(); - System.out.println("---------------------证书导入失败日志----------------------"); - System.out.println(e.getMessage()); - } + sydApi4j.importCertToServers(ipList, timeout, cert, bkCode, gson.toJson(snmpMap)); System.out.println("------------end-----------------------"); stopWatch.stop(); System.out.println("耗时:" + stopWatch.getTotalTimeMillis() + "ms"); diff --git a/src/main/java/com/sunyard/SydApi.java b/src/main/java/com/sunyard/SydApi.java index 90f5688..e51a037 100644 --- a/src/main/java/com/sunyard/SydApi.java +++ b/src/main/java/com/sunyard/SydApi.java @@ -120,5 +120,4 @@ public interface SydApi extends public void setBindObject(Object bindObject); - void importCertToServers(List addressList, int timeout, String cert, String bkCode, String snmpConfig); } diff --git a/src/main/java/racal/sunyard/main/SydApi4j.java b/src/main/java/racal/sunyard/main/SydApi4j.java index f48d4dd..2e0297d 100644 --- a/src/main/java/racal/sunyard/main/SydApi4j.java +++ b/src/main/java/racal/sunyard/main/SydApi4j.java @@ -32,9 +32,7 @@ import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.bouncycastle.pqc.math.linearalgebra.ByteUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.snmp4j.PDU; import org.snmp4j.event.ResponseEvent; -import org.snmp4j.mp.SnmpConstants; import racal.sunyard.main.dto.DTO77; import racal.sunyard.main.dto.DTO78; import racal.sunyard.main.dto.DTO79; @@ -56,7 +54,6 @@ import java.security.cert.CertificateFactory; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; import java.time.Duration; -import java.time.LocalDateTime; import java.util.*; import java.util.function.Supplier; import java.util.stream.Collectors; @@ -1312,8 +1309,7 @@ public class SydApi4j implements SydApi { } - @Override - public void importCertToServers(List addressList, int timeout, String cert, String bkCode, String snmpConfig) { + public String importCertToServers(List addressList, int timeout, String cert, String bkCode, String snmpConfig) { if (null == addressList || addressList.isEmpty()) { throw new IllegalArgumentException("签名服务器地址不能为空"); } @@ -1337,17 +1333,17 @@ public class SydApi4j implements SydApi { stringBuilder.append("签名服务器:").append(taskOutcome.getContext().getAddress()).append("/导入失败:").append(taskOutcome.getError().getMessage()).append("\n"); } } + String dn = null; + String serialNumber = null; + X509Certificate certificate = null; + try { + certificate = CertUtil.convertToX509Cert(cert); + dn = certificate.getSubjectDN().toString(); + serialNumber = certificate.getSerialNumber().toString(); + } catch (Exception e) { + log.warn("导入证书格式错误!"); + } if (!failures.isEmpty()) { - String dn = ""; - String serialNumber = ""; - X509Certificate certificate = null; - try { - certificate = CertUtil.convertToX509Cert(cert); - dn = certificate.getSubjectDN().toString(); - serialNumber = certificate.getSerialNumber().toString(); - } catch (Exception e) { - log.info("证书格式错误!"); - } //记录失败日志 stringBuilder.append("行号:").append(bkCode).append("\n").append("DN:").append(dn) .append("\n序列号:").append(serialNumber).append("\n证书:").append(cert); @@ -1374,9 +1370,9 @@ public class SydApi4j implements SydApi { } catch (Exception e) { log.warn("snmp告警消息发送失败:{}", e.getMessage()); } - throw new SydApiException("证书导入失败!", 56300, true); +// throw new SydApiException("证书未全部导入成功!", 56300, true); } - + return dn; } private TaskContext createTaskContext(String address, int timeout, String cert) { diff --git a/src/test/java/sample/Test4NongxinCW.java b/src/test/java/sample/Test4NongxinCW.java index aa326c6..924c3b8 100644 --- a/src/test/java/sample/Test4NongxinCW.java +++ b/src/test/java/sample/Test4NongxinCW.java @@ -27,26 +27,26 @@ public class Test4NongxinCW { byte[] orgData = new byte[100]; - @Before - public void before() { - // 通过设置debug的属性开启debug,如果不设置则默认不打开 - api = (SydApi4j) new SydApi4j().connect("172.16.18.6", 8889, null, 1000); - - } +// @Before +// public void before() { +// // 通过设置debug的属性开启debug,如果不设置则默认不打开 +// api = (SydApi4j) new SydApi4j().connect("172.16.18.6", 8889, null, 1000); +// +// } @Test public void connection() { } - @After - public void after() { - try { - this.api.disconnect(); - } catch (Exception e) { - e.printStackTrace(); - } - } +// @After +// public void after() { +// try { +// this.api.disconnect(); +// } catch (Exception e) { +// e.printStackTrace(); +// } +// } @Test public void nakeSign(){