2014-04-02 98 views
1

我需要調用jquery裏面的java類方法,我該怎麼做?使用jquery調用java服務器端方法

更多的瞭解例:

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

我想打電話從jQuery的這個letsCall()方法。

+0

使用servlet公開方法並調用它。您應該考慮實施一個適當的,簡單的RESTful Web服務,以保持良好和清晰。 – toniedzwiedz

+0

嘗試使用jsp like <%=function%> –

+0

我不想使用JSP或servlets進行此操作,只有jquery調用Java Class ... – User123456

回答

3

1的方法: -

在jQuery的API

,調用任何後端系統,你的情況的Java,你需要做的調用Ajax調用你的java控制器或服務。

jquery ajax post call (call your java controller here)

第二個方法: -

,如果你需要的Java類來參加你的JSP生成,你可以去自定義標籤,在你的情況,你可以看一下JSF框架它基本上將您的用戶事件綁定到您的控制器。

其他框架 - springmvc將您的jsp屬性綁定到其相應的模型,在這種情況下無需使用jQuery,您可以通過彈簧自定義標籤實現它。

spring mvc example

春自定義標籤例如

spring custom tag example

+0

謝謝,我喜歡第一種方法,但它往往使用網址如下所示,$ AJAX({ 類型: 「POST」, 網址:網址, 數據:數據, 成功:成功, 的dataType:數據類型 })。那麼,在我的場景中,我通過什麼來代替URL?因爲在我沒有一個網址nevigate,只是一個java類的一些方法... – User123456

+0

@ashish是啊你的java類將駐留在服務器,所以你應該提供您的服務器位置和控制器操作,將您的請求發送到該服務器。看到這個鏈接http://www.mkyong.com/spring-mvc/spring-mvc-jquery-autocomplete-example/ –

+0

如果你想讓你的jquery調用你的java類,你需要將你的java託管在服務器中通過主機url你可以訪問你的java類..我不知道你是否可以從jquery調用普通pojo,這是不可能的 –

0

退房DWR。我們使用它來做這種事情,它運作良好。它包裝所有的Ajax的東西,所以你不必擔心它。