java:Servlet与jsp、js数据交互

传值:
1.jsp传值给Servlet
表单,ajax都行

2.Servlet传值给jsp
在SERVLET 中把对象存入request.setAtribute(“ 别名”, 对象名); 里;再在JSP 中调用request.getAtribute(“ 别名”);
当然还有url传值、session传值;

//传值给jsp
request.setAttribute("errMsg", "错误信息");

//跳转到指定的jsp
//客户端跳转
response.sendRedirect("/a.jsp");
response.sendRedirect("http://www.baidu.com/");

//服务器跳转,内部跳转
request.getRequestDispatcher("/wechatPay.jsp").forward(request, response);

服务器端跳转就是指地址栏内容不变(客户端浏览器的地址栏不会显示目标地址的URL),而客户端跳转是指地址栏内容发生改变(客户端向服务器发请求,然后服务器再给客户端一个响应,然后客户端再根据服务器端给的响应中的URL再向服务器发送请求,所以是两次请求,因此地址栏改变了显示最后一次请求地址);

还有一种是写入的形式

//data 是json的格式的字符串,这样的传值jsp一般用ajax获取写入的data数据
PrintWriter out  = response.getWriter();
out.println(data);  
out.flush();  
out.close();

3.jsp、js获取Servlet传过来的值

    <% 
        // 获取由Servlet中传入的参数 
        String errorMsg=request.getAttribute("errMsg").toString();
    %>

  
<%=errMsg%>

你可能感兴趣的:(java:Servlet与jsp、js数据交互)