如何实现js调用java函数

我现在想用一个button,点击之后调用js的function,在fuction里面再调用jave类的静态函数。看了一下,有DWR和AJAX的实现方式,不过不想用框架我试了下js中嵌入<% %>方式也实现不了。求能不能给个简单的AJAX实例,谢谢啦!

var xmlHttp; //创建XMLHttpRequest对象 function createXMLHttpRequest(){ if(window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if(window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); } } function startRequest(){ createXMLHttpRequest(); try{ xmlHttp.onreadystatechange = handleStateChange; xmlHttp.open("GET", "xxxxxxx.action",true); xmlHttp.send(null); }catch(exception){ alert(exception.message); } } function handleStateChange(){ if(xmlHttp.readyState == 4){ if (xmlHttp.status == 200 || xmlHttp.status == 0){ // 取得返回字符串 var resp = xmlHttp.responseText; // 然后可以把resp构造返回JSON对象或者XML对象 } }}JS中调用 startRequest()方法,handleStateChange()方法中获得JAVA类的返回数据
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-31
1,反射调用java类;2,jsp中import java类,new()使用 3,ajax $('#test').click(function() {
$.ajax( {
'url' : '/xxx.do(web.xml里跳转到java类)或者/xx.action!xxx(struts2的),
'type' : 'post',
'data' : {'name' : 'test' },
'dataType' : 'json',
'success' : function(json) {
},
'error':function(){
}
});
});
自己最近研究的,不知道对不对~~~~本回答被网友采纳
第2个回答  2015-08-20

思路

1、java端建立servlet服务,js通过ajax等方式调用servlet

2、可以通过dwr等第三方方式集成,然后调用java方法

3、用jsp,使用<%%>的方式进行脚本执行

举例

var a= "<%=Test.buttonTest()%>"; //Test就是java类,buttonTest就是java的函数

第3个回答  2013-08-31
我这没有现成的代码 ,但是思路可以是这样 :
写一个servlet类似mvc里面的控制器,每次 ajax提交请求时附带个参数如:
class=xxxx.xxxClass&method=xxxMethod¶meters=p1,p2,p3
servlet可以跟据类名来实例化一个类对象之后调用相应的方法,并把参数传给方法。
也可以使使用反射技术来调用方法。