如何使用ajax在javascript中调用Java类方法?

我有一个Java类::

package MyPackage;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.ArrayList;

import java.util.List;

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

import com.google.gson.Gson;

public class PopulateTextbox {

Gson gson = new Gson();

JSONObject obj = new JSONObject();

JSONArray arr = new JSONArray();

String temp1;

String temp;

List <String>rowValues = new ArrayList<String>();

List <Integer>rowValues1 = new ArrayList<Integer>();

String[] contactListNames;

Connection con=null;

Statement st=null;

ResultSet rs=null;

public String method(){

try{

String driver = "sun.jdbc.odbc.JdbcOdbcDriver";

Class.forName(driver);

String db = "jdbc:odbc:Practice_Database";

con = DriverManager.getConnection(db,"","");

st = con.createStatement();

String sql = "SELECT Emp_Name,ID,Email_Add FROM EmployeeSearch";

rs = st.executeQuery(sql);

while(rs.next()){

obj.put("ID", rs.getInt("ID"));

obj.put("Names",rs.getString("Emp_Name"));

obj.put("Email", rs.getString("Email_Add"));

arr.add(obj);

}

//obj.accumulate("ID",rowValues1);

//obj.accumulate("Names",rowValues);

temp1 = arr.toString();

System.out.println(temp1);

}catch(Exception e){System.out.println(e);}

/*finally{

try {

if(con!=null)con.close();

} catch (SQLException e) {

e.printStackTrace();

}

try {

if(rs!=null)rs.close();

} catch (SQLException e) {

e.printStackTrace();

}try {

if(st!=null)st.close();

} catch (SQLException e) {

e.printStackTrace();

}

}*/

return temp1;

}

public static void main(String args[])

{

PopulateTextbox obj = new PopulateTextbox();

String temp1= obj.method();

}

}

这给了我一个Json数组。现在,我想在JavaScript中一次又一次调用此类的method()以获得新值,因为我更新了我的数据库。我有一个数据网格,当页面首次加载此json数组中的一组值时,该网格运行良好。但是如何使用Ajax刷新数据。或者如何使用Ajax调用method()以便当我单击页面上的按钮时刷新数据。我在Java脚本中调用此方法的代码是::

<%

String temp1;

PopulateTextbox obj = new PopulateTextbox();

temp1 = obj.method();

%>

我在通过对服务器的Ajax调用来检索temp1中的一组新值时遇到问题。请帮忙 ?谢谢。

回答:

创建一个空白的JSP(例如,textBoxAjaxResp.jsp),然后从该JSP中放入您的JSON字符串:

<%

String temp1;

PopulateTextbox obj = new PopulateTextbox();

temp1 = obj.method();

%>

<%=temp1 %>

并使用jQuery AJAX调用命中该JSP。

$.get("mypath/textBoxAjaxResp.jsp", function (response) {

//do operation using the response

}, "json");

以上是 如何使用ajax在javascript中调用Java类方法? 的全部内容, 来源链接: utcz.com/qa/420887.html

回到顶部