如何通过jsp获取运行java应用程序的实例?

Posted

技术标签:

【中文标题】如何通过jsp获取运行java应用程序的实例?【英文标题】:How to get the instance of running java application through jsp? 【发布时间】:2013-05-15 22:11:22 【问题描述】:

我有一个具有一些开放 API 的 Java 应用程序。我想从 jsp 页面使用这些 API。 我对此一无所知。截至目前,我的理解是我必须获取运行 java 应用程序的实例。

如果我错了,请纠正我。

【问题讨论】:

你不能只做 JavaClass.getInstance() 吗? 可以看***.com/questions/239147/… 运行java应用程序的实例是什么意思? 也许他指的是单身人士? 【参考方案1】: 我假设您的 java 应用程序在运行您的 jsp 的同一台服务器上运行。 您的 java 应用程序可作为可运行的 jar 使用。

如果以上两个假设是正确的,那么您可以调用该 java 应用程序的 API,方法是将其放在运行 jsp 的应用程序服务器的类路径中,然后将其包含在您的 jsp 中。

现在假设您想从正在运行的 java 应用程序中获取一些内存数据。

为此,如果您的 java 应用程序正在侦听某个端口,并且有 API 支持,那么您的 jsp 可以使用 API 通过端口与该应用程序通信 在这种情况下,即使是 jsp 和 java 应用程序也可以在不同的服务器上。

底线是,如果你能提供一些更具体的用例细节,哪些 java 应用程序,什么样的 API 等等人们可以更好地帮助你

【讨论】:

【参考方案2】:

您必须在 JSP 顶部导入类

<%@ page import="my.class.path.MyClass" %>

详情请参阅How do you import classes in JSP?。

然后您可以像这样在代码中使用该类:

<% MyClass myClassInstance = new MyClass();
   myClassInstance.myMethod();
%>

如果你想输出一些你可以使用的东西:

<%= myClassInstance.aMethodThatReturnsAString() %>

该方法可以返回任何东西(但必须返回一些东西)。如果它不是String,那么它将像此表达式中的任何其他非字符串值一样处理:

"Begin " + aMethodThatReturnsSomething() + " End";

因此,int 会像 int 一样显示,对象会调用其 toString() 等等。

【讨论】:

【参考方案3】:

通过jsp获取java应用实例

使用以下简单步骤:

import java clas as
  <%@ page import="classPath.className" %>

创建class的对象并使用它的方法和variable作为

<% 
Mycalss test = new Myclass();
test.sum();
%>

【讨论】:

以上是关于如何通过jsp获取运行java应用程序的实例?的主要内容,如果未能解决你的问题,请参考以下文章

java如何实现:一个一直在运行的监听程序,每当监听到数据,就把数据发给jsp页面

在JAVA或JSP中,能否取得登录WINDOWS的域名及用户名?

Java Web基础 --- Jsp 综述(下)

JSP基础

手上有一jsp网站程序, 没有java原文件,只有相应class类文件,现要改写…

如何在运行时获取 Java 应用程序的真实路径?