【问题标题】:Calling java server side method using jquery使用jquery调用java服务器端方法
【发布时间】:2014-04-02 06:10:45
【问题描述】:

我需要在jquery中调用java类方法,我该怎么做?

为了更多的理解例如:

Class Foo{
      public static void letsCall(){
          // Do something here ...
      }
}

我想从 jquery 中调用这个 letsCall() 方法。

【问题讨论】:

  • 使用 servlet 公开方法并调用它。您应该考虑实现一个适当、简单的 RESTful Web 服务,以使其保持美观和清晰。
  • 用jsp试试
  • 我不想为此使用 JSP 或 servlet,只有 jquery 调用 Java 类...

标签: java javascript jquery


【解决方案1】:

1 种方法:-

在 jquery api 中,调用任何后端系统,在你的情况下是 java,你需要做 ajax 调用来调用你的 java 控制器或服务。

jquery ajax post call (call your java controller here)

第二种方法:-

如果您需要 java 类来参与您的 jsp 形成,您可以使用自定义标签,在您的情况下,您可以寻找基本上将您的用户事件绑定到您的控制器的 jsf 框架。

其他框架——springmvc将你的jsp属性绑定到它对应的模型上,这种情况下不需要使用jquery,可以通过spring自定义标签来实现。

spring mvc example

spring 自定义标签示例

spring custom tag example

【讨论】:

  • 谢谢,我喜欢第一种方法,但它倾向于使用如下所示的 url,$.ajax({ type: "POST", url: url, data: data, success: success, dataType:数据类型 });那么,在我的场景中,我应该通过什么来代替 URL .. 因为我没有要导航的 url,只是一个带有一些方法的 java 类......
  • @ashish 是的,您的 java 类将驻留在服务器中,因此您应该提供您的服务器位置和您的请求将被定向到的控制器操作。看到这个链接mkyong.com/spring-mvc/spring-mvc-jquery-autocomplete-example
  • 如果你想让 jquery 调用你的 java 类,你需要将你的 java 托管在服务器中,并且只有通过主机 url 你才能访问你的 java 类。我不知道你是否可以调用普通的 pojo从jquery,这是不可能的
  • 我解决了我的问题,我使用 Jetty 处理程序来接收请求,处理它并生成响应..
【解决方案2】:

【讨论】:

    【解决方案3】:

    查看DWR。我们经常使用它来做这种事情,而且效果很好。它封装了所有的 ajax 内容,因此您不必担心。

    【讨论】:

      猜你喜欢
      • 2010-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-04
      • 1970-01-01
      • 2015-10-14
      • 1970-01-01
      相关资源
      最近更新 更多