jsp向servlet传值大致有以下三种情况。
第一种:超链接,是get提交方式
例子:
第二种:form表单提交,当点击submit时,是post提交方式
例子:
第三种:利用ajax提交,是post提交方式
例子:
把数据传到servlet的方式无非就是通过get和post两种方式:
get直接在url后面加问号传参,
post会把参数放在实体内容里面。
最后在servlet那边用request.getParameter(“参数名”);就可以拿到了数据了。
由于Http传输最终传的都是字符串!在jsp前台的集合,数组等一些对象在不经处理的情况下是无法传递到Servlet后台的!因为在Servlet后台中通过用 request.getParameter(“参数名”);方式只能接受String类型的字符串数据,集合,数组等对象是无法接受的!所以JSP应该如何向Servlet传递对象?
解决前台传递对象参数时后台获取和使用的问题:
JSP向Servlet传递对象原理:Http传输最终穿的都是字符串,只不过可以在后端解析成对象即可
jsp前台:
将集合,数组等对象使用JSON.stringfy(集合/数组)方法先把集合/数组转化为json格式,这样就成了一串字符串了,然后就可以传到后台
例子:
Servlet后台 :
通过request.getParameter(“参数名”);方式获取并用String来接收前台传过来的json格式的对象字符串
再使用Java中json转Map集合, json转jsonArray数组的方式对json格式的对象字符串进行还原对应格式的对象,
例子: