• tomcat jsp 数字串传值异常问题


    1.在下面的jsp内嵌java代码去除num之前,有某Controller已经有了操作:  

              request.getSession().setAttribute("num","纯数字串(带有X或Y的此处不考虑)");   //eg:435122199502011115

    2.然后在某jsp中:

          <% String num= (String) request.getSession().getAttribute("num");%>获取到String num.

    3.此时,可能(只是有可能),在传值到java后台的Controller(采用springMVC框架)指定映射方法时:

          在该方法内通过 String num= request.getParameter("num");此时拿到的num就已经变成了 435122199502010000    //后面的几位被和谐了....哈哈

    此时这种情况,服务器会报错: 500 Get  http:服务器ip:port/路径/(435122199502010000).....见图

    此时解决办法:  在jsp获取到string串时就用英文字符拼接,传到controller内的指定的方法时通过subString拿到自己需要的那一段即可...

    jsp如下:

    window.onload=function(){

    <% String certNo = (String) request.getSession().getAttribute("certNo") + "end";%>

    // var certNo=${certNo};

    var certNo = '<%=certNo%>';

    //var certNo='111111111111111111end';

    $.ajax({ type: "get", url: "get_todo_count.do", data: {"certNo":certNo}, dataType: "json",

    success: function(data){

    if("error"== data.count){ $("#demo_todo").html("系统暂时无法读取..."); }

    else{ var count = data.count+"条待办";

    $("#PDNotice_todo").html(count); //只为对应的系统设值 } } });

    //setTimeout(methodName, 5000);//设置系统指定时间后执行的方法 } });

    XXController内的XXmethods体内:

    String certNo = request.getParameter("certNo");
    // System.out.println(">>>>--->>>>>>>>>>>>>>---->>>>>>>>>------->>>>>>"+certNo);
    int index = certNo.indexOf("end");
    certNo = certNo.substring(0, index);
    // System.out.println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"+certNo);

    最后的certNO串肯定是你想要的..

    第一次写,格式还不是很清楚...了了几笔把大概的意思说出来了,以后有机会再好好研究写出好看的随笔..希望能够帮助到某些人

  • 相关阅读:
    HDU 5392 Infoplane in Tina Town
    HDU 2206 IP的计算(字符串处理)
    线程的条件变量实例
    CentOS安装配置Samba
    PO订单审批拒绝API
    【Java集合源代码剖析】Hashtable源代码剖析
    magento megatron主题加入中文
    递归系列2(字符串翻转,12345翻转)
    机器学习之&amp;&amp;Andrew Ng课程复习--- 聚类——Clustering
    JSP基础
  • 原文地址:https://www.cnblogs.com/duenboa/p/4756164.html
Copyright © 2020-2023  润新知