首页 > 软件开发 > JAVA >

ajax回调参数乱码怎么办

来源:互联网 2023-03-16 19:22:51 339

Ajax 即“AsynchronousJavascriptAndXML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。gBl办公区 - 实用经验教程分享!

Ajax = 异步JavaScript和 XML 或者是 HTML(标准通用标记语言的子集)。gBl办公区 - 实用经验教程分享!

Ajax 是一种用于创建快速动态网页的技术。gBl办公区 - 实用经验教程分享!

Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。gBl办公区 - 实用经验教程分享!

通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。gBl办公区 - 实用经验教程分享!

传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。gBl办公区 - 实用经验教程分享!

工具/原料

  • 电脑
  • myeclipse

方法/步骤

  • 1

    第一步:问题定位。gBl办公区 - 实用经验教程分享!

    1、出现乱码的原因一般都是由于编码的不一致导致的。ajax请求接受字符编码一般都为utf-8gBl办公区 - 实用经验教程分享!

    2、在数据传输的过程中,前端get请求或post请求在经过Tomcat和java的一些框架时,都可能会出现编码不一致的问题导致乱码,乱码一般都是中文。gBl办公区 - 实用经验教程分享!

  • 2

    第二步:问题重现。gBl办公区 - 实用经验教程分享!

    1、我们重现的是比较原始的javaweb的servlet开发,status2和springmvc和其它框架原理基本都是一样的。gBl办公区 - 实用经验教程分享!

    2、代码实现gBl办公区 - 实用经验教程分享!

    2.1 首先搭建一个javaweb项目gBl办公区 - 实用经验教程分享!

    编写servlet关键代码gBl办公区 - 实用经验教程分享!

    @OverridegBl办公区 - 实用经验教程分享!

    protected void doGet(HttpServletRequest req, HttpServletResponse response) throws ServletException, IOException {gBl办公区 - 实用经验教程分享!

    gBl办公区 - 实用经验教程分享!

    MapString,Object> map = new HashMapString,Object>();gBl办公区 - 实用经验教程分享!

    map.put("name", "张三");gBl办公区 - 实用经验教程分享!

    map.put("name2", "李四");gBl办公区 - 实用经验教程分享!

    map.put("name3", "网二");gBl办公区 - 实用经验教程分享!

    JSONObject json = new JSONObject(map);gBl办公区 - 实用经验教程分享!

    PrintWriter out = response.getWriter();gBl办公区 - 实用经验教程分享!

    out.write(json.toString());gBl办公区 - 实用经验教程分享!

    out.close();gBl办公区 - 实用经验教程分享!

    }gBl办公区 - 实用经验教程分享!

    2.2 web.xml配置gBl办公区 - 实用经验教程分享!

    servlet>gBl办公区 - 实用经验教程分享!

    servlet-name>servlet/servlet-name>gBl办公区 - 实用经验教程分享!

    servlet-class>com.test.servlet.ServletController/servlet-class>gBl办公区 - 实用经验教程分享!

    /servlet>gBl办公区 - 实用经验教程分享!

    servlet-mapping>gBl办公区 - 实用经验教程分享!

    servlet-name>servlet/servlet-name>gBl办公区 - 实用经验教程分享!

    url-pattern>/servlet.do/url-pattern>gBl办公区 - 实用经验教程分享!

    /servlet-mapping>gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

  • 3

    第三步:重现乱码测试。gBl办公区 - 实用经验教程分享!

    1、打开页面。gBl办公区 - 实用经验教程分享!

    2、单击按钮ajaxgBl办公区 - 实用经验教程分享!

    3、弹出内容乱码,问题重现gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

  • 3相关内容未经授权抓取自百度经验
  • 4

    第四步:问题解决。gBl办公区 - 实用经验教程分享!

    1、解决的思想主要是通过接收数据,传输数据之前先使用utf-8编码解决。gBl办公区 - 实用经验教程分享!

    2、具体代码如下所示gBl办公区 - 实用经验教程分享!

    @OverridegBl办公区 - 实用经验教程分享!

    protected void doGet(HttpServletRequest req, HttpServletResponse response) throws ServletException, IOException {gBl办公区 - 实用经验教程分享!

    gBl办公区 - 实用经验教程分享!

    response.setContentType("application/json;charset=utf-8");gBl办公区 - 实用经验教程分享!

    // setContentType与setCharacterEncoding的顺序不能调换,否则还是无法解决中文乱码的问题gBl办公区 - 实用经验教程分享!

    response.setCharacterEncoding("UTF-8");gBl办公区 - 实用经验教程分享!

    gBl办公区 - 实用经验教程分享!

    MapString,Object> map = new HashMapString,Object>();gBl办公区 - 实用经验教程分享!

    map.put("name", "张三");gBl办公区 - 实用经验教程分享!

    map.put("name2", "李四");gBl办公区 - 实用经验教程分享!

    map.put("name3", "网二");gBl办公区 - 实用经验教程分享!

    JSONObject json = new JSONObject(map);gBl办公区 - 实用经验教程分享!

    PrintWriter out = response.getWriter();gBl办公区 - 实用经验教程分享!

    out.write(json.toString());gBl办公区 - 实用经验教程分享!

    out.close();gBl办公区 - 实用经验教程分享!

    gBl办公区 - 实用经验教程分享!

    }gBl办公区 - 实用经验教程分享!

    3、测试。gBl办公区 - 实用经验教程分享!

    3.1 打开页面,gBl办公区 - 实用经验教程分享!

    3.2点击ajax按钮如下图所示。gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

    ajax回调参数乱码怎么办?gBl办公区 - 实用经验教程分享!

  • 注意事项

    • 如果接收出现乱码:new String(str.getBytes("ISO-8859-1"),"uft-8");

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!gBl办公区 - 实用经验教程分享!


    标签: 编程语言JQUERYJAVA

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码