在servlet中输出JS并且解决JS乱码

在用JSP进行MVC开发的时候,通常都是用一个页面提交信息给一个servlet来进行处理,比如信息添加成功后在servlet中弹出个窗口,提示信息已经添加成功,点确定后再转向添加前的页面或者其它页面。

以下为我在servlet中写的添加评论的方法

public void add(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  request.setCharacterEncoding("UTF-8");
  response.setContentType("text/html");
  response.setCharacterEncoding("UTF-8");
  PrintWriter out = response.getWriter();
  String username = request.getParameter("username");
  if (username == null || "".equals(username)) {
   username = "匿名";
  }
  String content = request.getParameter("content");
  String blog_id = request.getParameter("blog_id");

  try {
   QueryRunner qr = DbUtils.getQueryRunner();
   String sql = "insert into comment(blog_id,username,content,comment_time) values(?,?,?,now())";
   String params[] = { blog_id, username, content };
   int result = 0;
   result = qr.update(sql, params);
   if (result == 1) {
    out
      .println("<script language='javascript'>alert('恭喜你评论添加成功');location.href=\"GetBlogServlet?id="
        + blog_id + "\";</script>");
    // response.sendRedirect("GetBlogServlet?id=" + blog_id);
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
  out.close();
 }

注意事项:

这里是一个实现添加评论的Servlet,添加评论成功则返回提示信息。

alert('恭喜你评论添加成功');这里涉及到了中文,如果在Servlet中没有下面两句代码:

response.setContentType("text/html");

response.setCharacterEncoding("utf-8");

在弹出窗口的提示信息就是乱码,也就是(恭喜你评论添加成功')这句话将变成乱码。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值