【问题标题】:Is there a way to call Java class with main() from JSP and print the value in the console or JSP page有没有办法从 JSP 调用带有 main() 的 Java 类并在控制台或 JSP 页面中打印值
【发布时间】:2015-05-19 02:34:45
【问题描述】:

我有疑问:

  1. 是否可以在 JSP 中使用 main() 调用 Java 类并在控制台或 JSP 页面中打印值(不使用 Servlet 类)?

  2. 使用 main() 从 Java 类中类似地打印 JSP 页面中的值(不使用 Servlet 类)?

请解释一下。

【问题讨论】:

  • “不使用 Servlet 类”是什么意思? JSP 文件被转换为 servlet,因此很难不使用它们。
  • @Pshemo :没有使用意义,我想从 Jsp 和 Java(仅)进行调用,只是想了解这个概念是否可能。或者是一个规则,来自 Jsp 的调用必须通过 servlet,然后是 Java 类
  • 来自 JSP 的调用实际上是来自 servlet 的调用(因为 JSP 是更好的 servlet)。您可以在 JSP 中添加一些代码,这些代码将调用一些方法,而无需借助 scriptlet <% ... %> 而是 you should avoid it。关于第 2 点,我不确定您想要实现什么,因为运行 servlet(和 JSP)是服务器工作。
  • @Pshemo:感谢您的解释和帮助理解这个概念

标签: java jsp servlets jstl


【解决方案1】:

是否可以在 JSP 中使用 main() 调用 Java 类并在控制台或 JSP 页面中打印值(不使用 Servlet 类)?

使用 main() 从 Java 类中类似地打印 JSP 页面中的值(不使用 Servlet 类)?

任何破解都是可能的,但ServletJSPJSTL 最适合这里

Checkout tutorial

【讨论】:

    【解决方案2】:

    由于典型的 main() 方法的返回类型为 void,因此无法这样做:

    public staic void main(String[] args) { ... }
    

    但是您调用该类的任何静态方法并返回一个字符串并将其输出到您的 JSP:

    public class Util {
      public static String doSomething() {
        // do something and generate a String
        return "helloWord";
      }
    }
    

    JSP

    <%= Util.doSomething() %>
    

    这会打印出包含 JSP 输出标记的静态 doSomething() 方法的返回值。

    【讨论】:

    • 感谢您的解释,让我对这个概念有了清晰的认识
    猜你喜欢
    • 2016-08-04
    • 2020-08-14
    • 1970-01-01
    • 2012-05-13
    • 2018-09-25
    • 2019-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多