当前位置:首页 > JAVA教程 > 正文内容

java web乱码解决方法【JAVA教程】,java,乱码

搜教程4年前 (2019-12-10)JAVA教程156

设置文件的保留编码花样,这个平常在新建项目时,设置了GBK的编码花样,这时候文件的页面编码花样是GBK的,而保留花样是ANSI的,厥后把项目及文件的编码花样改成utf-8的编码花样后,依旧涌现中文乱码,这就是因为已存在的文件的保留编码花样照样ANSI把致,所以要把之前的.java文件的保留花样变动成utf-8,才不会涌现中文解释乱码问题

window-preferences-General-Content Types 在Text下挑选对应的文件范例再改页面编码为UTF-8然后点Update就能够了。

注:

如果是一个全新的事情空间,设置Myeclipse的编码花样,就即是设置了项目,文件及其保留的编码花样了(不包括jsp等文件)

如果是一个已存在的事情间,而本来的编码花样为GBK,那末变动事情空间的编码,则相当于设置了项目,文件的编码花样,然则关于之前已存在的.java文件,其保留编码是转变不了的,必须按上面(4)去变动,然则关于将要新建的文件的保留编码是有作用的

乱码要搜检的几个处所

1.保留的编码

2.jsp里声明的编码(UTF-8和utf8是一样的)

注重:

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>

3.过滤器里处置惩罚的字符编码,仅限于输入的输出的数据编码。而上面那句代码中设的编码花样是页面的显现花样。

一份javaweb的项目代码中,统共有这几种花样:

1.代码的保留花样2.浏览器的剖析花样3.数据输入时的花样(也就是浏览器的剖析花样决议)4.数据处置惩罚时的花样。

原则上以上六种花样都要一样,就相对不会乱码,但有一些特殊情况,其中有一些不一致,显现也会准确,如不需要将输入的内容举行显现和处置惩罚时request和respose的花样能够与其他的花样不一致,ps:经常使用编码ISO-8859-1,gbk,utf-8

因而十拿九稳的要领以下:

Jsp里的声明语句能够弄掉四种花样,而剩下的两种花样能够用监听器的要领处理:

新建一个监听器

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>

更多java学问请关注java基础教程栏目。

以上就是java web乱码处理要领的细致内容,更多请关注ki4网别的相干文章!

扫描二维码推送至手机访问。

版权声明:本文由搜教程网发布,如需转载请注明出处。

本文链接:https://www.sojiaocheng.cn/16556.html

标签: java乱码
分享给朋友:

“java web乱码解决方法【JAVA教程】,java,乱码” 的相关文章

JVM内存地区和垃圾接纳的剖析(图文)【JAVA教程】,JVM

JVM内存地区和垃圾接纳的剖析(图文)【JAVA教程】,JVM

本篇文章给人人带来的内容是关于JVM内存地区和垃圾接纳的剖析(图文),有肯定的参考价值,有须要的朋侪可以参考一下,愿望对你有所协助。 一、JVM简介 JVM,全称Java Virtual Machine,即Java虚拟机。以Java作为编程言语所编写的应用顺序都是运转在JVM上的。JVM是一...

Java中synchronized关键字的用法引见(代码示例)【JAVA教程】,synchronized

Java中synchronized关键字的用法引见(代码示例)【JAVA教程】,synchronized

本篇文章给人人带来的内容是关于Java中synchronized关键字的用法引见(代码示例),有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。 在并发编程中,synchronized关键字是常涌现的角色。之前我们都称谓synchronized关键字为分量锁,但是在JDK1.6...

JSP与Servlet之间的区分【JAVA教程】,JSP,Servlet,java

JSP与Servlet之间的区分【JAVA教程】,JSP,Servlet,java

Servlet和JSP是两种最盛行的Java Web手艺,它们在Java Web应用顺序中生成动态内容。那末它们之间有什么区分?下面本篇文章就来带人人认识一下JSP与Servlet,简朴引见一下它们之间的区分,愿望对人人有所协助。【视频教程引荐:Java教程】 JSP是什么? JSP是一...

Java中String字符串运算的引见(代码示例)【JAVA教程】,Java

本篇文章给人人带来的内容是关于Java中String字符串运算的引见(代码示例),有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。 一、字符串运算 String类 1、概述 String是特别的援用数据范例,它是final类。 2.组织要领 String str = "a...

spring validation作为数据校验的要领引见(附代码)【JAVA教程】,springboot,spring,java

本篇文章给人人带来的内容是关于spring validation作为数据校验的要领引见(附代码),有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。 数据的校验是交互式网站一个不可或缺的功用,前端的js校验能够涵盖大部分的校验职责,如用户名唯一性,生日花样,邮箱花样校验等等经常运用...

Java遍历的完成要领引见(代码示例)【JAVA教程】,Java

Java遍历的完成要领引见(代码示例)【JAVA教程】,Java

本篇文章给人人带来的内容是关于Java遍历的完成要领引见(代码示例)有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。 package com.zlh; import java.util.ArrayList; import java.util.HashMap; import ja...