Bootstrap

java ssm框架中的controller是如何向页面传递参数的。

java ssm框架中的controller是如何向页面传递参数的。

目录

一、使用Map 来传递参数。,>

1、java 后台代码的编写,put了operation和application键值对。

2、页面使用后台传递过来的键值对,

二、使用PrintWriter来传递参数。

1、后台台代码的编写

2、页面的代码编写,


一、使用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);
			}
		}
	});

 

;