/**
* HTML标签过滤,避免用户歹意提交带HTML标签的数据
*
* @author liulg
*/
public class HTMLCharacterRequest extends HttpServletRequestWrapper {
public HTMLCharacterRequest(HttpServletRequest request) {
super(request);
}
@Override
public String getParameter(String name) {
String value = super.getParameter(name);
return filter(value);
}
@Override
@SuppressWarnings("unchecked")
public Map getParameterMap() {
Map<String, String[]> map = super.getParameterMap();
Map<String, String[]> map_ = new HashMap<String, String[]>();
Set<Entry<String, String[]>> set = map.entrySet();
Iterator<Entry<String, String[]>> it = set.iterator();
while (it.hasNext()) {
Entry<String, String[]> entry = it.next();
if (entry != null && entry.getValue() != null
&& entry.getValue().length > 0) {
String[] array = new String[entry.getValue().length];
for (int i = 0; i < entry.getValue().length; i++) {
array[i] = filter(entry.getValue()[i]);
}
map_.put(entry.getKey(), array);
}
}
return map_;
}
@Override
public String[] getParameterValues(String name) {
String[] values = super.getParameterValues(name);
if (values == null || values.length == 0)
return values;
for (int i = 0; i < values.length; i++) {
String str = values[i];
values[i] = filter(str);
}
return values;
}
private String filter(String value) {
if (StringUtil.isNotBlank(value)) {
value = value.replaceAll("<", "[").replaceAll(">", "]");
}
return value;
}
}
/**
* HTML标签过滤,避免用户歹意提交带HTML标签的数据
*
* @autho