
Set the saving encoding format of the file. Generally, when creating a new project, the GBK encoding format is set. At this time, the page encoding format of the file is GBK, and the saving format is ANSI. Later, after changing the encoding format of the project and files to UTF-8 encoding format, Chinese garbled characters still appeared. This is because the saving encoding format of the existing files is still ANSI, so the previous .java file must be saved. Change the format to utf-8 so that the problem of garbled Chinese comments will not occur
window-preferences-General-Content Types Select the corresponding file type under Text and then change the page encoding to UTF-8 and click Update. .
Note:
If it is a brand new workspace, setting the encoding format of Myeclipse is equivalent to setting the project, file and saving encoding format (excluding jsp, etc. File)
If it is an existing workspace and the original encoding format is GBK, then changing the encoding of the workspace is equivalent to setting the encoding format of the project and file, but for the previous The saving encoding of an existing .java file cannot be changed. It must be changed according to (4) above. However, the saving encoding of the new file is effective.
Several places to check for garbled characters
1. Saved encoding
2. Encoding declared in jsp (UTF-8 and utf8 are the same)
Note:
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
3 .The character encoding processed in the filter is limited to the input and output data encoding. The encoding format set in the above code is the display format of the page.
In a javaweb project code, there are a total of these formats:
1. Code saving format 2. Browser parsing format 3. Data input format (that is, Determined by the browser's parsing format) 4. The format during data processing.

In principle, the above six formats must be the same, and there will never be garbled characters. However, there are some special cases, some of which are inconsistent, and the display will be correct. If not When displaying and processing the input content, the format of request and respose can be inconsistent with other formats. ps: Commonly used encodings are ISO-8859-1, gbk, utf-8
So the foolproof method is as follows:
The declaration statement in Jsp can get rid of four formats, and the remaining two formats can be solved using the listener method:
Create a new listener
package com.helloweenvsfei.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class CharacterEncodingFilter implements Filter{
private String characterEncoding;
private boolean enabled;
public void destroy() {
// TODO Auto-generated method stub
characterEncoding = null;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
if(enabled || characterEncoding != null){
request.setCharacterEncoding(characterEncoding);
response.setCharacterEncoding(characterEncoding);
}
chain.doFilter(request, response);
}
public void init(FilterConfig config) throws ServletException {
// TODO Auto-generated method stub
characterEncoding = config.getInitParameter("characterEncoding");
enabled = "true".equalsIgnoreCase(config.getInitParameter("enabled").trim());
}
}web.xml
<filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>com.helloweenvsfei.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>characterEncoding</param-name> <param-value>utf8</param-value> </init-param> <init-param> <param-name>enabled</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>characterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
For more java knowledge, please pay attention to the java basic tutorial column.
The above is the detailed content of Java web garbled solution. 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

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

Dreamweaver CS6
Visual web development tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

Dreamweaver Mac version
Visual web development tools





