运行中的代码方面的一个java战争从命令行
题
我怎么会去写一些代码,允许访问Java类在我的网络应用程序从命令行。
E.g。我有一个java类命令线路接口,可以运行代码在背景下的网络应用程序,可以访问该数据库等。我想要登录的机托管我打仗的应用程序在tomcat,并能与它进行互动
我应该从哪里开始寻找?
感谢
解决方案
您是否只想运行恰好捆绑在WAR中的类文件,或者您是否希望与实际运行的WAR实例进行交互?如果是前者,则WAR只是一个普通的Jar文件,您可以像其他任何Jar文件一样执行该类。
如果您想与正在运行的WAR进行交互,那么您可能需要查看JMX。
所有当前的JDK(至少1.5+)都附带JMX“免费”。创建很少的接口类很容易用作与WAR交互的命令。
您需要创建一个通过JMX连接到WAR的命令行程序,或者您可以使用JConsole(它随JDK一起提供,但它是一个GUI)等工具与您的实例进行交互。还有其他JMX客户端。
如果这些都不具吸引力,那么总会有网络服务。
其他提示
一个建议:你的命令行口类应该接受的一个输入流,因为它的输入和提供使用的输出流(它不能进行硬编码输出到系统。出和输入到系统中。在),它的产出将是编写。然后你必须要写一个服务器类侦听连接在一定的港口。当连接的服务器会把将输入流离连接,并给它的命令行类,这将提供所使用的输出流这些数据写入将要传递给客户的连接。
不隶属于 StackOverflow