前端 : html + js + json
后端: java + servlet (无jsp)
要解决的问题 :
- 后端servlet重定向 , 到一个html页面 ;
- 重定向后该html需要一个id作为参数,通过json来获取数据库相应数据 ;
- 矛盾 : 重定向是一次新的请求,无法将重定向前的参数继承下来 ;
解决思路 :
- 给重定向的html的url带参数,从而实现传参 ; 例如:
index.html?id=99
- 前端通过js截取参数 , 来发起json请求 , 从而获取相应数据 ;
后端读取:
- json输出的参数id,本例通 req.getParameter(“id”)形式获取;
- 否则可以JSONObject对象后,采用来get(“id”)形式获取参数;
- 最终以json形式反馈给前端;
如下代码 :
public String get(HttpServletRequest req, HttpServletResponse resp) {
Integer id = Integer.parseInt(req.getParameter("id"));//获取ID;
Category c = categoryDAO.get(id);//获取数据库数据;
JSONObject json = new JSONObject();
json.put("category", JSONObject.fromObject(c));
return "%" + json; // 以json对象形式,返回前端;
}
以上就是本人实践中感悟的 : 通过URL传参+JSON组合来实现 , 后台重定向后的传参 ;
喜欢的朋友鼓励下 , 给个赞哦 , 同时欢迎发表不同的看法和见解.