您的位置:首页 > Web前端 > JavaScript

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

2012-03-08 22:01 176 查看
在用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");

在弹出窗口的提示信息就是乱码,也就是(恭喜你评论添加成功')这句话将变成乱码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: