一尘不染

如何为tomcat Web应用程序实现控制台命令行?

tomcat

我有一个网络应用程序

  • 由tomcat 7.1托管
  • 使用Spring 3.1 MVC框架。

我想为tomcat控制台窗口实现命令行功能,以读取命令并执行一些操作或向控制台输出一些信息。我该怎么做?

示例:键入“ show memory ”,然后显示JVM内存信息到控制台。

我可以做System.in吗?会有线程安全问题吗?


阅读 356

收藏
2020-06-16

共1个答案

一尘不染

如果您在Tomcat中作为Web应用程序运行,则将无法访问System.in或控制台:Tomcat通常是在后台启动,与所有控制台分离。它不会为您提供对控制台的有意义的访问。

可行的方法是提供@rlegendi在注释中建议的REST
API(任何其他API也可以使用),并编写一个与您的API接口的单独的命令行应用程序。另外,也可以使用“管理器”界面-
如果我记得很久以前的话,tomcat的管理器应用程序也提供了一些可用于从外部脚本访问的方法。

确保对这些调用进行身份验证-至少验证它们来自本地主机,以便在API中模拟某种安全性。不要相信来自世界各地的随机呼叫。

2020-06-16