1、post方法
@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);
}
2、get方法
Tomcat8 以及以后不用设置,其余版本在配置文件修改