package com.sun.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sun.bean.User;
public class loginServlet extends HttpServlet {
@Override
public void init() throws ServletException {
// TODO Auto-generated method stub
super.init();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String method=req.getParameter("method");
String name=req.getParameter("name");
String pwd=req.getParameter("pwd");
System.out.println(method+" "+name+" "+pwd);
//PrintWriter writer = resp.getWriter();
User user=new User();
user.setName(name);
user.setPwd(pwd);
req.getSession().setAttribute("user", user);
resp.setCharacterEncoding("utf-8");
req.setCharacterEncoding("utf-8");
req.getRequestDispatcher("welcome.jsp").forward(req, resp);
//resp.sendRedirect("welcome.jsp");
System.out.println("aaa");
//writer.write("ok");
/**
* 在Servlet中,一般有参数传递的话,会设置页面接收参数和传递参数的编码。即下面两句:
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("utf-8");
一般情况下,大部分都会想到使用这个,
但是这两句代码的位置有时却容易被忽视。正确的写法是,
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("utf-8");
要放在PrintWriter out = response.getWriter();的前面。
因为out对象初始化之后,再设置编码已经没有任何意义了!
所以必须在out对象初始化之前进行编码的设置。
*/
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(req, resp);
}
@Override
public void destroy() {
// TODO Auto-generated method stub
super.destroy();
}
}
req.getRequestDispatcher("welcome.jsp").forward(req, resp); 出现乱码的问题
最新推荐文章于 2022-06-29 07:41:04 发布