springMVC+Thymeleaf+VUE2后台向前台传值方式

1、@ModelAttribute

功能,注册以及别名,如@ModelAttribute("testData") Usertest testData,意思是将Usertest 对象注册一下,并且前台访问的别名为testData

后台用法:

//传递参数@ModelAttribute
testData.setUsename("测试@ModelAttribute获取");
thymeleaf 页面获取:
@ModelAttribute testData : 

thymeleaf js获取
var temp3 = [[${testData.usename}]]; //传递参数@ModelAttribute
alert("-----传递参数@ModelAttribute-----:"+temp3);
2、 Model
类似一个map集合,将后台数据放入map集合中,传递给前台,跟struts中写map一样,只不过这里固定了类型叫Model,前台跟struts的map不一样了,到达前台时给拆分了,比如我放入一个aa,前台不是map.aa,而且直接aa

后台用法:

//传递参数Model
model.addAttribute("modelData", "测试model获取");
前台用法:

传递参数Model : 

js获取:
alert("-----传递参数HttpServletRequest:"+temp1);
var temp2 = [[${modelData}]]; //传递参数Model
3、 HttpServletRequest
这个常用,放入方法的输入参数中

后台用法:

//传递参数HttpServletRequest
request.setAttribute("requestTestData", "测试request数据");
thymeleaf页面用法:
传递参数HttpServletRequest : 

thymeleaf js用法:

var temp1 = [[${requestTestData}]]; //传递参数HttpServletRequest
alert("-----传递参数HttpServletRequest:"+temp1);




demo:

/**
	 * 初始化方法,这里默认不查询数据
	 * @param dc
	 * @return
	 */
	@RequestMapping({ "/" })
	//跳转页面不需要@responseBody
	public String init(@ModelAttribute("responseData") DataCenter dc,
			@ModelAttribute("testData") Usertest testData,
			Model model,
			HttpServletRequest request) {
		dataWrap.getPageInfo().setRowOfPage(15);
		//传递参数@ModelAttribute
		testData.setUsename("测试@ModelAttribute获取");
		//传递参数Model
		model.addAttribute("modelData", "测试model获取");
		//传递参数HttpServletRequest
		request.setAttribute("requestTestData", "测试request数据");
		//设置参数
		String query_Date = "2018-02-05 00:00:00";
		model.addAttribute("query_Date", query_Date);
		//获取查询条件里的交易月份,由于获取到的是2018-01-25 00:00:00 格式 需要转化为201801 故作此处理
		QueryParamList paramQueryParamList = new QueryParamList();
	    paramQueryParamList.addParam("gdYjysbmJyyf","201802");
		return "gd/yjydlsb.html";
	}



	
		
	


	
@ModelAttribute testData :

传递参数Model : ${modelData} [[${modelData}]]

传递参数HttpServletRequest :



你可能感兴趣的:(springMVC)