gpt4 book ai didi

java - 将 System.out 重定向到页面

转载 作者:行者123 更新时间:2023-12-02 00:22:03 25 4
gpt4 key购买 nike

我正在通过 JSP 页面运行 Java 应用程序。是否可以将 Java 应用程序打印到 System.out 中的所有内容重定向到我的页面中?

编辑:我有一个包含 main 函数的包pkg。该函数有很多 System.out.println 调用。例如

package pkg;
public class pkg {
public static void main(String[] args) {
System.out.println("Hello");
}
}

在我的index.jsp中我调用:

<%
pkg.pkg.main(new String[] {});
%>

我需要查看 pkg.pkg.main 在页面上打印的所有内容。例如

Hello

最佳答案

一个简单的方法是调用 System.setOut()适当包裹response output stream 。然而,一旦多个并发请求启动,这将不起作用,因为不同线程的输出之间不会有区别。

您可以创建自己的输出流子类,该子类委托(delegate)给另一个线程本地输出流,您在对每个请求调用 pkgmain() 方法之前将其设置为响应的输出流。如果您的 pkgmain() 生成额外的线程,那么此方法可能不起作用(尽管在这种情况下您可以尝试使用 InheritableThreadLocal)。

关于java - 将 System.out 重定向到页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10766141/

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