Several solutions to java garbled situations:
1. Garbled characters appear when the data passed to the server through get is obtained in the Servlet;
public class RegistServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String name = req.getParameter("userName"); byte[] bytes = name.getBytes("ISO8859-1"); String newName = new String(bytes,"UTF-8"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
Analysis: Define a name variable in the doGet method to obtain the client data userName encapsulated in the server, then assign the name to the byte array bytes in the form of "ISO8859-1", and finally use the bytes array in the form of UTF-8 Assign a value to a newly created String variable newName. At this time, newName is the data that can be displayed normally. The reason why it is so troublesome is because there is no direct way to solve it in one line of code. You can regard this method as a fixed usage.
2. Garbled characters appear when obtaining data passed to the server through post in the Servlet;
public class RegistServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //注意:post方式提交数据的乱码解决方式,放在getParameXXX方法之前 req.setCharacterEncoding("UTF-8"); //得到前台input框中name="username"和password="password"的value值 String username = req.getParameter("username"); String password = req.getParameter("password"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
Analysis: Solving the garbled problem in the post delivery mode is very simple, just req.setCharacterEncoding("UTF -8”); This line of code, but please note that this sentence must be placed before obtaining the data.
3. Garbled characters appear when Servlet responds data to the client through the server;
public class RegistServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //方式一: resp.setContentType("text/html;charset=utf-8"); //方式二: resp.setHeader("Content-type", "text/html"); resp.setCharacterEncoding("UTF-8"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
Analysis: Note that the above two methods must be written before the output method when applied. In addition, the two The method has the same effect, because method one is simpler and is commonly used.
4. Garbled characters appear when HTML or JSP pages are displayed on the client.
<head> <meta charset="UTF-8"> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>form表单</title> </head>
For more java knowledge, please pay attention to the java basic tutorial column.
The above is the detailed content of Several solutions to garbled code problems in Java. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Atom editor mac version download
The most popular open source editor

SublimeText3 Linux new version
SublimeText3 Linux latest version

SublimeText3 Mac version
God-level code editing software (SublimeText3)

SublimeText3 English version
Recommended: Win version, supports code prompts!

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.