gpt4 book ai didi

java - ProcessBuilder的实现设计

转载 作者:行者123 更新时间:2023-12-04 05:31:59 25 4
gpt4 key购买 nike

我想做以下事情:

将文件写入磁盘。然后运行shell命令。 shell 命令读取/操作此文件,通过网络发送请求,将响应写入另一个文件并返回并退出值。

为了运行 shell 命令,我已经阅读了有关 ProcessBuilder 和 Runtime.exec() 的信息。

究竟如何实现上述功能。负责的 webapp(struts)将托管在 Jbossas 7.1 中。

我是否需要像 JCA 这样的东西,因为不推荐使用 i.o 和 EJB(尽管在我的情况下只会使用一台服务器)。我可以简单地使用 POJO(Struts Action )吗?我不确定如何处理多个线程,尽管 Struts Action 是“线程安全的”。

提前致谢,

如果我要使用线程池来并行处理多个请求,这将是使用 JCA 的一个原因。

最佳答案

您应该看看 Apache Camel 框架:http://camel.apache.org/index.html。
这是一个非常有用且易于学习/使用的集成框架。它具有您需要的所有组件:

  • 文件 - http://camel.apache.org/file2.html - 生产/消费文件,还有通知,例如文件已创建
  • 执行 - http://camel.apache.org/exec.html - 执行系统命令。
  • 并行处理 - http://camel.apache.org/parallel-processing-and-ordering.html - 您可以处理多个请求。

  • 我在一个项目(JBoss AS 7.1 + JSF2/Richfaces)的Java EE环境中使用了它,非常喜欢它。

    关于java - ProcessBuilder的实现设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12458321/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com