关于 jsp java servlet 中文汉字乱码的解决方法
生活随笔
收集整理的這篇文章主要介紹了
关于 jsp java servlet 中文汉字乱码的解决方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在servlet類中的get,post最前面加上
req.setCharacterEncoding("UTF-8"); resp.setCharacterEncoding("UTF-8");對接收到的漢字字符串轉碼
String name = req.getParameter("name");String deptName = req.getParameter("deptName");name = new String(name.getBytes("ISO-8859-1"), "UTF-8");deptName = new String(deptName.getBytes("ISO-8859-1"), "UTF-8");完整樣例:
package servlet;import Dao.DeptDao; import Dao.EmpDao; import entity.Emp; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; import java.io.UnsupportedEncodingException;public class EmpServlet extends HttpServlet{@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String action = req.getParameter("action");req.setCharacterEncoding("UTF-8");resp.setCharacterEncoding("UTF-8");if("listEmp".equals(action)){listEmp(req,resp);}}private void listEmp(HttpServletRequest req, HttpServletResponse resp){JSONArray result = EmpDao.listEmp();PrintWriter pw = null;try {pw = resp.getWriter();pw.println(result);pw.flush();pw.close();} catch (IOException e) {e.printStackTrace();}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String action = req.getParameter("action");req.setCharacterEncoding("UTF-8");resp.setCharacterEncoding("UTF-8");if("addEmp".equals(action)){try {addEmp(req,resp);} catch (JSONException e) {e.printStackTrace();}}}private void addEmp(HttpServletRequest req, HttpServletResponse resp) throws JSONException, UnsupportedEncodingException {String name = req.getParameter("name");String deptName = req.getParameter("deptName");name = new String(name.getBytes("ISO-8859-1"), "UTF-8");deptName = new String(deptName.getBytes("ISO-8859-1"), "UTF-8");int deptId = DeptDao.reConvert(deptName);JSONObject result = EmpDao.addEmp(name,deptId);try {PrintWriter pw = resp.getWriter();pw.println(result);pw.flush();pw.close();} catch (IOException e) {e.printStackTrace();}} }總結
以上是生活随笔為你收集整理的关于 jsp java servlet 中文汉字乱码的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vmware workstation p
- 下一篇: LeetCode 744. Find S