From 9d2f9451c1db65ba4c091a1fe3725c4a1f0528aa Mon Sep 17 00:00:00 2001 From: liuy <37787198+LiuyCodes@users.noreply.github.com> Date: Thu, 11 Sep 2025 17:14:48 +0800 Subject: [PATCH] =?UTF-8?q?refactor(ZsyhCbsProcessor):=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E5=88=9D=E5=A7=8B=E8=AF=B7=E6=B1=82JSON=E8=AF=BB?= =?UTF-8?q?=E5=8F=96=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在`ZsyhCbsProcessor`类中,对读取初始FlowFile内容的方式进行了改进。通过使用`InputStream`来读取内容,并且确保了资源的正确关闭,从而提高了代码的健壮性和可维护性。具体改动包括: - 引入了`java.io.InputStream`的导入语句。 - 使用`try-with-resources`语句自动管理`InputStream`的生命周期,避免了潜在的资源泄漏问题。 - 将读取和解析JSON的操作封装到了`try-with-resources`块内,使得代码逻辑更加清晰。 --- .../src/main/java/com/hzya/frame/ZsyhCbsProcessor.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/nifi-hzyadev-bundle/hzya-nifi-Zsyh-cbs-processors/src/main/java/com/hzya/frame/ZsyhCbsProcessor.java b/nifi-hzyadev-bundle/hzya-nifi-Zsyh-cbs-processors/src/main/java/com/hzya/frame/ZsyhCbsProcessor.java index 2d55630..fdaba0e 100644 --- a/nifi-hzyadev-bundle/hzya-nifi-Zsyh-cbs-processors/src/main/java/com/hzya/frame/ZsyhCbsProcessor.java +++ b/nifi-hzyadev-bundle/hzya-nifi-Zsyh-cbs-processors/src/main/java/com/hzya/frame/ZsyhCbsProcessor.java @@ -24,6 +24,7 @@ import org.apache.nifi.processor.util.StandardValidators; import org.bouncycastle.jce.provider.BouncyCastleProvider; import java.io.IOException; +import java.io.InputStream; import java.nio.charset.StandardCharsets; import java.security.Security; import java.util.*; @@ -115,9 +116,11 @@ public class ZsyhCbsProcessor extends AbstractProcessor { List allRecords = new ArrayList<>(); try { - //读取初始FlowFile内容,作为后续分页请求的模板 - String initialRequestJson = IOUtils.toString(session.read(flowFile), StandardCharsets.UTF_8); - ObjectNode requestTemplate = (ObjectNode) objectMapper.readTree(initialRequestJson); + ObjectNode requestTemplate; + try (InputStream in = session.read(flowFile)) { + String initialRequestJson = IOUtils.toString(in, StandardCharsets.UTF_8); + requestTemplate = (ObjectNode) objectMapper.readTree(initialRequestJson); + } // 获取初始页码 int currentPage = requestTemplate.has("currentPage") ? requestTemplate.get("currentPage").asInt() : 1;