将JavaScript连接到Java
问题描述:
我在网页上运行JavaScript并运行Java Therad。所有这些都在Spring-MVC框架中。我的想法是,我在jsp网站的JavaScript代码。控制器使游戏therad极限在java中。但我需要将数据发送到我的游戏线程。所以我想使用控制器。 所以我想从JavaScript脚本到站点调用控制器的更新数据,并从它得到responde。将JavaScript连接到Java
所以我觉得要输入这样的代码在我的网站上的JavaScript代码JSON数据发送到controller.Example代码,看看的想法:
$("#btnPostGlEntry").click(function() {
var glEntries = '{"glEntries":[{"generalLedgerId":"1"},{"accountId":"4"},{"amount":"344.44"},{"description":"Test Entry"},{"debit":"Yes"}]}';
$.ajax({
type: "POST",
contentType: "application/json",
dataType: "json",
url: contextPath + "/generalLedger/journalEntries/form",
data : JSON.stringify(glEntries),
success: function(data) {
alert("Success!!!");
},
error: function (jqXHR, textStatus, errorThrown) {
alert(jqXHR + " : " + textStatus + " : " + errorThrown);
}
});
});
JSON - Spring MVC : How to post json data to spring MVC controller
或
var PersonText = '["firstname":"John", "lastname":"Someone"]';
$.ajax({
type : 'POST',
url : "/addnewperson.do",
data : {'personModel' : personText},
datatype : 'json',
success : function(data) {
var obj = jQuery.parseJSON(data);
}
});
How to call Spring MVC from Javascript?
所以控制器需要一些薄K类似于这样:
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
@Controller
public class TestController {
@RequestMapping(value="/test.htm")
public @ResponseBody Integer add(@RequestParam(value="inputNumber1", required=true) Integer inputNumber1,
Model model) {
System.out.println(inputNumber1);
return inputNumber1;
}
}
Unable to send data from controller to javascript
所以,我有几个问题。 首先。 Javascript是一个游戏代码(浏览器中的图形显示器),所有的时间都在工作。我想调用控制器并将数据传输给它。并从控制器(物理引擎)接收数据。所以我不想从控制器操作中重新加载页面。其次。在这种情况下由控制器进行通信是好主意吗?
答
使用它可以在客户端和控制器之间传输数据而无需重新加载页面。即在您的Controller中使用AJAX和@ResponseBody标记。
或者,您可以完全绕过控制器,直接使用定义的远程方法(例如在服务层中)直接使用DWR传输数据(Direct Web Remoting,这对于使用AJAX的直接传输很好,但它可以绕过MVC框架。
你需要访问数据库,使AJAX调用控制器动作是一个办法做到这一点。拨打电话和处理在javascript线上的数据,不会造成页面重新加载。 请删除此问题。 – 2013-05-09 21:47:51