一、post方法html
@WebServlet("/charset/process") public class CharsetServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //request.setCharacterEncoding用于将请求体(get方法无请求体不可用)中request字符集转换,且需位于post第一行 request.setCharacterEncoding("UTF-8"); /* * getParameter是获取从服务器中表单form中提交的数据,且默认是String类型 * getAttribute是与setAttribute对应的方法,解决请求不能传递数据的问题,因此更开放,只要是Object便可 * javaWeb设置这两个不一样的方法感受很繁琐,莫非是用于区分服务器端和浏览器请求端 * */ String name = request.getParameter("ename"); String address = request.getParameter("address"); //name.getBytes(原字符集名) 经过new String(原字节数组,新字符集)改变字符集 // String utf8name =new String(name.getBytes("iso-8859-1"),"utf-8"); // String utf8address =new String(address.getBytes("iso-8859-1"),"utf-8"); response.setContentType("text/html;charset=utf-8"); response.getWriter().println(name +" : "+address); }
二、get方法
Tomcat8 以及之后不用设置,其他版本在配置文件修改
java