java ssm框架中的controller是如何向页面传递参数的。
目录
1、java 后台代码的编写,put了operation和application键值对。
一、使用Map<String, Object> 来传递参数。
在控制器的方法中添加一个Map类型参数A。给参数A的put方法put了键值对B,键值对B在页面中就可以获取到了,
1、java 后台代码的编写,put了operation和application键值对。
@RequestMapping("/edit_form")
public String editApplicationFormPage(Map<String, Object> map,
HttpServletRequest request, String applicationId) {
map.put("operation", "edit");
Application application = applicationService
.getApplicationById(applicationId);
if(application.getSysBigIcon()==null||application.getSysBigIcon().equals("")){
application.setSysBigIcon("/www/images/default.png");
}
if(application.getSysIcon()==null||application.getSysIcon().equals("")){
application.setSysIcon("/www/images/default.png");
}
if (application != null) {
map.put("application", application);
}
return "/frame/system/application/application_form";
}
2、页面使用后台传递过来的键值对,
使用的方法是键值对要用${}包裹起来。 比如:${operation}和${application.orgId},${operation}是引用后台map put的operation键值对,${application.orgId}是引用后台map put的application实体的一个对象。
<script type="text/javascript">
window.WWWROOT = "${ctx}";
window.DefaultOrgId = "<%=user.getDefaultOrgId()%>";
window.Operation = "${operation}";
window.OrgId = "${application.orgId}";
window.TaskAppId = "${application.taskAppId}";
window.MenuType = "${application.menuType}";
</script>
<title>${operation eq 'add'?'添加':(operation eq
'edit'?'编辑':'查看')}应用系统</title>
二、使用PrintWriter来传递参数。
给PrintWriter写一些内容。就把这些内容返回到页面了。
1、后台台代码的编写
在控制器的方法中添加一个PrintWrite类型参数writer,使用writer.write()方法写入内容。页面就可以返回这内容了。代码如下:
@RequestMapping("/add")
public void add(HttpServletRequest request, HttpServletResponse response,MenuRight menuRight, PrintWriter writer)
{
try{
Boolean result =menuRightService.addMenuRight(menuRight);
writer.write("{\"success\":true}");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
writer.write("{\"success\":false}");
}
}
2、页面的代码编写,
success : function(result)中的result就是后台返回的writer.write()中的内容
$.ajax({
type : 'POST',
url : WWWROOT + "/menuRight/add",
data : dat,
success : function(result) {
if ($.parseJSON(result).success == true) {
$(stId).attr("checked", true);
} else {
alert("添加授权失败");
$(stId).attr("checked", false);
}
}
});