我在网页上运行了 JavaScript,并且正在运行 Java 线程。一切都在 spring-MVC 框架中。我的想法是我在 jsp 站点中有 JavaScript 代码。控制器制作一个游戏线程,它是在 java 中的。但我需要将数据发送到我的游戏线程。所以我想为此使用控制器。因此,我希望从站点中的 JavaScript 脚本调用控制器以获取更新的数据并从中获得响应。
所以我想在我的 JavaScript 代码中输入这样的代码,以将 JSON 数据发送到控制器。示例代码以查看想法:
$("#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:如何将 json 数据发布到 Spring MVC 控制器
或者
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);
}
});
所以控制器需要一些这样的想法:
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;
}
}
所以我有几个问题。第一的。JavaScript 是一种一直有效的游戏代码(浏览器中的图形显示)。我想调用控制器并将数据传输给它。并从控制器(物理引擎)接收数据。所以我不希望从控制器操作中重新加载页面。第二。在这种情况下,通过控制器进行通信是个好主意吗?