从servlet转发跳到Jsp页面中时出现的乱码问题

因为我用的IDE是eclipse,所以在生成servlet时,是自动生成的,在doGet方法内会自动添加上:
response.getWriter().append(“Served at: “).append(request.getContextPath());
当我转发跳转到下一个Jsp页面时,该页面乱码了,而如果直接访问的话,是没有问题的,
所有的字符编码也都是能改的都改成了utf-8,也在这里加上了:response.setCharacterEncoding(“utf-8”);
可是依然还是没有解决问题,后来查了资料,又经别人指点了下,才知道问题出在哪了,
这里是要么把response.getWriter().append(“Served at: “).append(request.getContextPath());这句话删掉,要么就把response.setCharacterEncoding(“utf-8”);写在它的前面,而不要写在它的后面就行了,

@see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
      */
     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
           response.setCharacterEncoding("utf-8");
           response.getWriter().append("Served at: ").append(request.getContextPath());

           response.setContentType("text/html;charset=utf-8");

           News news = new News();
           List<Nav> list = news.queryNavAll();
           request.setAttribute("navList", list);
          request.getRequestDispatcher("index.jsp").forward(request, response);

     }
  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值