导航:首页 > 净水问答 > java过滤器怎么编码

java过滤器怎么编码

发布时间:2023-01-09 06:20:27

Ⅰ javaweb,给HTML文件加上过滤器以后,HTML显示乱码。

那是你的浏览器不识别Content-Type,采用了默认的GBK/GB2312编码显示,这个可以在打开页面“右键-编码”看到;meta最好给一个结束符,即:<meta http-equiv="content-type" content="text/html; charset=utf-8" />

Ⅱ Java获取字符的Unicode编码以及如何过滤特

java中可以使用char类提供的charAt()方法来获得字符的unicode的编码值,示例如下:

public static String getUnicode(String source){ String returnUniCode=null; String uniCodeTemp=null; for(int i=0;i<source.length();i++){ uniCodeTemp = "\\u"+Integer.toHexString((int)source.charAt(i));//使用char类的charAt()的方法 returnUniCode=returnUniCode==null?uniCodeTemp:returnUniCode+uniCodeTemp; } System.out.print(source +" 's unicode = "+returnUniCode); return returnUniCode;//返回一个字符的unicode的编码值}

Ⅲ 在java中,使用过滤器编码过滤乱码时,过滤器的编码怎么写

public void doFilter(ServletRequest srequest, ServletResponse sresponse,
FilterChain chain) throws IOException, ServletException {
if (null != encoding) {
HttpServletRequest request = (HttpServletRequest)srequest;
HttpServletResponse response = (HttpServletResponse)sresponse;

// 对请求进行编码设置
request.setCharacterEncoding(encoding); //把请求用指定的方法编码
response.setContentType("text/html");
response.setCharacterEncoding(encoding); //把返回响应指定 编码方式
System.out.println("------------过滤编码-------------" + encoding);
}
// 把处理权限交给下一个过滤器
chain.doFilter(srequest, sresponse);
}//这是核心方法
正好项目中有用到

Ⅳ java filter 过滤器中文乱码 怎么解决啊

1、首先编写一个Java类的filter代码。操作步骤:
(1)在myeclipse中新建一个java类,

(2)单击“Add”按钮,在弹出来的对话框中“选择接口”文本框中输入Filter,
并选择匹配好的类型javax.servlet
(3)单击“OK”按钮返回"New Java Class"对话,然后单击“Finish”按钮,就可以看到创建的过滤器框架:
过滤器类:Encoding.java,代码如下:
package com;
import java.io.IOException;
import javax.servlet.*;
public class Encoding implements Filter {
protected String encoding=null;
protected FilterConfig config;
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if(request.getCharacterEncoding()==null){
//得倒指定的编码
String encode=getEncoding();
if(encode!=null){
//设置request的编码
request.setCharacterEncoding(encode);
response.setCharacterEncoding(encode);
}
}
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws ServletException {
this.config=filterConfig; //得到web.xml中的配置编码
this.encoding=filterConfig.getInitParameter("Encoding");
}
protected String getEncoding(){
return encoding;

}
}
2、在web.xml文件写入以下代码:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<filter> <!-- 控制编码 -->
<filter-name>EncodingFilter</filter-name>
<filter-class>com.Encoding</filter-class>
<init-param> <!-- 初始化参数 -->
<param-name>Encoding</param-name>
<param-value>GB2312</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>

Ⅳ java如何创建过滤器

弄过滤器,要实现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;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class EncodingFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("GBK");//处理编码
response.setCharacterEncoding("GBK");//处理编码

chain.doFilter(request, response);//让过滤器执行下一个请求
}

public void destroy() {}

public void init(FilterConfig arg0) throws ServletException {}
}

//下面这个是在web.xml下的配置

<filter>
<filter-name>encoding</filter-name>
<filter-class>
刚刚创建的那个实现filter接口的类的位置
例如:com.temp.filter.EncodingFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>*.jsp这个是以jsp为后缀的文件都拦截下来</url-pattern>
</filter-mapping>
可以写多个的<filter-mapping>来配置你所要拦截的东西

恩,有点唠叨,希望可以帮助到你

Ⅵ jsp\java 如何编写过滤器过滤特殊字符

package com.jing.common;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class IllegalCharacterFilter implements Filter {
private String[] characterParams = null;
private boolean OK=true;

public void init(FilterConfig config) throws ServletException {

// if(config.getInitParameter("characterParams").length()<1)
// OK=false;
// else
// this.characterParams = config.getInitParameter("characterParams").split(",");
System.out.println("初始化");
}

@SuppressWarnings("unchecked")
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest servletrequest = (HttpServletRequest) request;
HttpServletResponse servletresponse = (HttpServletResponse) response;
String param = "";
String paramValue = "";

//设置请求编码格式
servletresponse.setContentType("text/html");
servletresponse.setCharacterEncoding("UTF-8");
servletrequest.setCharacterEncoding("UTF-8");
java.util.Enumeration params = request.getParameterNames();
//循环读取参数
while (params.hasMoreElements()){
param = (String) params.nextElement(); //获取请求中的参数
String[] values = servletrequest.getParameterValues(param);//获得每个参数对应的值

for (int i = 0; i < values.length; i++) {

paramValue = values[i];

//转换目标字符变成对象字符,可以多个。后期扩展特殊字符库用于管理
paramValue = paramValue.replaceAll("'","");
paramValue = paramValue.replaceAll("@","");
paramValue = paramValue.replaceAll("胡锦涛","***");

//这里还可以增加,如领导人 自动转义成****,可以从数据库中读取非法关键字。
values[i] = paramValue;

}

//把转义后的参数重新放回request中
request.setAttribute(param, paramValue);
}
//继续向下 执行请求,如果有其他过滤器则执行过滤器
arg2.doFilter(request, response);
}

public void destroy() {
// TODO Auto-generated method stub
}
}

Ⅶ java编程中,过滤器如何调用

<filter>
<description>编码抄格式控制</description>
<filter-name>CharacterFilter</filter-name>
<filter-class>com.bjsxt.util.filters.CharacterFilter</filter-class>
<init-param>
<description>编码格式</description>
<param-name>charset</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
在XML里面配置

阅读全文

与java过滤器怎么编码相关的资料

热点内容
污水厂进水量怎么样 浏览:360
工业污水排放指标各值的含义 浏览:54
污水处理总余氯的标准 浏览:246
陆地巡洋舰的空调滤芯在什么位置 浏览:908
小区污水井一般深多少米 浏览:854
反渗透盐水处理招标 浏览:233
洗车店废水 浏览:562
享优乐净化器怎么连接手机 浏览:47
熔喷滤芯怎么拆换 浏览:837
净水器怎么清除泥沙 浏览:506
如何检测废水中三甲苯 浏览:237
什么是不饱和树脂脂 浏览:194
九阳净水器怎么拆滤芯视频 浏览:470
反渗透设备诚荐郑州净康乐好 浏览:471
污水管与废水管是否设置阻火圈 浏览:538
无锡薄膜废水蒸发器多少钱 浏览:697
污水处理厂如何保温 浏览:698
污水是什么处理的 浏览:248
红色污水怎么造成的 浏览:1000
烤瓷牙能树脂 浏览:81