Java SpringMVC-如何在不创建视图的情况下从控制器检索值
我这里有个问题,我需要你的帮助 我正在尝试从控制器检索一个整数值到jsp 在我的jsp中,我有一个ajax调用:Java SpringMVC-如何在不创建视图的情况下从控制器检索值,java,spring,model-view-controller,controller,Java,Spring,Model View Controller,Controller,我这里有个问题,我需要你的帮助 我正在尝试从控制器检索一个整数值到jsp 在我的jsp中,我有一个ajax调用: $("#hdnCustomerSize").load(contextPath+"/customer/size", function() { // some codes }); 在我的控制器中: @RequestMapping(method = RequestMethod.GET, value="/size") public void getCustomerSize(Model mo
$("#hdnCustomerSize").load(contextPath+"/customer/size", function() {
// some codes
});
在我的控制器中:
@RequestMapping(method = RequestMethod.GET, value="/size")
public void getCustomerSize(Model model) {
model.addAttribute("customerSize", customerService.getCustomers().size());
}
我的问题是我遇到了一个例外:
javax.servlet.ServletException: Could not resolve view with name 'customer/size' in servlet with name 'tombuyandsell'.
我知道我遇到了这个异常,因为我故意没有在
视图.properties
中映射它。原因是我只想得到整数值size
,而不是整个jsp页面。请提供帮助。使用@ResponseBody
注释并将int作为字符串返回@ResponseBody
将导致返回类型写入响应HTTP正文
@RequestMapping(method = RequestMethod.GET, value="/size")
@ResponseBody
public String getGroupChatSize(Model model) {
return Integer.toString(customerService.getCustomers().size());
}
试试:
既然该值未存储在模型中,我该如何将该值存储在我的$(“#hdnCustomerSize”)中?@NinjaBoy使用load方法调用此控制器返回列表的大小,它将被放置在使用jquery选择的元素中。如果您只想获取数据,然后执行一些操作,请使用
$.post()
我尝试使用alert来显示。顺便说一句,hdnCustomerSize是我放在jsp中某处的隐藏表单。我这样做是为了显示$(“#hdnCustomerSize”).load(contextPath+”/customer/size),function(){alert($(“#hdnCustomerSize”).val();});它只是提醒一个空值。您确定请求已映射到控制器吗?如果在控制器中设置断点并进行调试,或者使用firebug查看通过线路发送的内容,会发生什么情况?我知道发生了什么。我使用了调试和firefox。这确实有效,但我试图以错误的方式获取隐藏的价值。我尝试使用alert($(“#hdnCustomerSize”).val()显示;当我在firebug上检查它时,我发现jquery.load将值存储为内部html。所以我尝试了alert($(“#hdnCustomerSize”).html()),可惜它显示了!!!非常感谢!!!多亏了这个问题,我学到了一些ResponseBody@PratapMurukutla不客气。
@ResponseBody
@RequestMapping(method = RequestMethod.GET, value="/size")
public int getGroupChatSize() {
return customerService.getCustomers().size();
}