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();
    %>

  <div class="res"><%=errMsg%></div>

 <script>
//js获取Servlet的值:${参数名}
        wx.config({
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: '${appId}', // 必填,公众号的唯一标识
        timestamp: '${timestamp}', // 必填,生成签名的时间戳
        nonceStr: '${noncestr}', // 必填,生成签名的随机串
        signature: '${signature}',// 必填,签名,见附录1
        jsApiList: ['chooseWXPay'], // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
    });   
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,805评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,287评论 18 399
  • 这部分主要是与Java Web和Web Service相关的面试题。 96、阐述Servlet和CGI的区别? 答...
    杂货铺老板阅读 5,248评论 0 10
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,475评论 11 349
  • 一. Java基础部分.................................................
    wy_sure阅读 9,281评论 0 11

友情链接更多精彩内容