燕山石化溯源三维电子沙盘-【后端】-服务
13693261870
2023-12-04 e14bf96759317a4668c3f0f19cd94363d5d91f9e
添加脚本执行功能
已修改3个文件
33 ■■■■ 文件已修改
pom.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/yssh/service/SocketService.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pom.xml
@@ -10,7 +10,7 @@
        <relativePath/>
    </parent>
    <!--打包成jar、war-->
    <packaging>jar</packaging>
    <packaging>war</packaging>
    <groupId>com</groupId>
    <artifactId>yssh</artifactId>
@@ -53,14 +53,14 @@
            <artifactId>spring-boot-starter-web</artifactId>
            <!--排除内置tomcat容器,让外部容器运行spring-boot项目-->
            <exclusions>
                <!--<exclusion>
               <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
                <exclusion>
                 <exclusion>
                    <groupId>org.apache.logging.log4j</groupId>
                    <artifactId>log4j-api</artifactId>
                </exclusion>-->
                </exclusion><!---->
            </exclusions>
        </dependency>
        <!--spring事务管理-->
src/main/java/com/yssh/service/SocketService.java
@@ -29,6 +29,12 @@
    @Value("${socket.port}")
    private int port;
    /**
     * Socket的端口
     */
    @Value("${cmd.runPy}")
    private String runPy;
    private final Logger logger = LoggerFactory.getLogger(this.getClass());
    /**
@@ -43,6 +49,8 @@
            BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
            PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
            exec(runPy);
            // 将用户输入的信息发送给服务端
            out.println(msg);
@@ -57,4 +65,18 @@
            throw ex;
        }
    }
    /**
     * 执行命令
     *
     * @param cmd 命令
     */
    public void exec(String cmd) {
        try {
            Process process = Runtime.getRuntime().exec(cmd);
            process.waitFor();
        } catch (Exception ex) {
            logger.error(ex.getMessage(), ex);
        }
    }
}
src/main/resources/application.yml
@@ -62,3 +62,6 @@
socket:
  ip: 127.0.0.1
  port: 6666
cmd:
  runPy: C:/Python310/py/runPy.bat