📄 capitalletterfilter.java
字号:
package jwadbook.filter;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.ServletException;import java.io.*;import java.util.Date;import java.awt.*;import com.sun.image.codec.jpeg.JPEGImageEncoder;import java.awt.image.BufferedImage;/** * * @author Jian (James) Cai */public class CapitalLetterFilter implements Filter{ public void init(final FilterConfig filterConfig) { } public void destroy() { } public CapitalLetterFilter() { } public void doFilter(final ServletRequest request, final ServletResponse response, FilterChain chain) throws java.io.IOException, javax.servlet.ServletException { String message = "Filtered !"; GenericResponseWrapper wrapper = new GenericResponseWrapper((HttpServletResponse)response); chain.doFilter(request, wrapper); OutputStream out = response.getOutputStream(); //message = getFilterConfig().getInitParameter("message"); ByteArrayOutputStream respStream = manipulateResp(wrapper.output()); response.setContentLength(respStream.size()); response.setContentType("text/html"); out.write(respStream.toByteArray()); out.flush(); out.close(); } public ByteArrayOutputStream manipulateResp(byte[] respData) throws ServletException { //change every character in the response to higher case int i; int o; char a='a'; char A='A'; int diff = A-a; ByteArrayInputStream readStream; ByteArrayOutputStream respStream; respStream = new ByteArrayOutputStream(); try{ readStream = new ByteArrayInputStream(respData); do { i = readStream.read(); //log("get char:"+((char) i)); //log("FilterWRES 125: read readStream"); if (i != -1) { if ( (((char) i)>='a')&&(((char) i)<='z') ) { o= i+diff; respStream.write(o); } else { respStream.write(i); } } } while (i != -1); readStream.close(); } catch (IOException e) { System.out.println("IOExcption:" + e); } return respStream; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -