在两个url之间通过get请求传递参数

适用情况:在页面1中点击超链接跳转到页面2,页面2向后台发起请求。
这时候,有一个参数需要从页面1传递到页面2,页面2向后台发起请求时又需要这个参数。
即参数需要从页面1->页面2->后台
使用get请求,参数可以从页面1传递参数至页面2,然而页面2发起的请求并不会携带这个参数

/**
页面1中超链接
href="./Stu_List?coursename='+row.coursename+'" target="view_self"
传递了coursename参数至第二个页面

页面2,向后台发起数据库交互的请求,查找选了这门课的学生信息
$('#dataList').datagrid({
			。。。。省略部分代码。。。
			url : "get_stu",  
*/
//请求转发,处理页面1的超链接/Stu_List,页面2就呈现给用户了
@RequestMapping(value="/Stu_List",method=RequestMethod.GET)
	public ModelAndView Stu_List(ModelAndView model,HttpServletRequest request){
		model.setViewName("course/Stu_List");
		String coursename =  request.getParameter("coursename");
		System.out.println(coursename);
		}
//页面2向后台发起数据库交互请求
@RequestMapping(value="/get_stu",method=RequestMethod.POST)
	@ResponseBody
	public Map<String, Object> get_stu(HttpServletRequest request,Page page){
String coursename =  request.getParameter("coursename");
		System.out.println(coursename+"这是第二个");
}

这里省略了其余无关的代码
下面一张图片是运行的结果,java为课程名,页面2能够成功获得get请求中的参数coursename=java,然而页面2发起的get_stu请求(获取指定课程的学生数据,这里)并不能获取coursename

这里遇到的问题的根本原因在于,可以把页面1,页面2,页面2发起的请求看成三个人,get是它们之间的通信方式,而只有页面1和2之间搭起了get的桥梁,那么我只要把页面2和页面2发起的请求之间再搭起一座桥,它们之间就能互相传递参数了

这张图是修改后的页面2发起请求代码
在这里插入图片描述
字符串分割,获取了get参数信息的字符串
在请求的url中又加入了get参数,实现了get参数的传递

有点类似于隔山打牛那般的感觉

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值