zjsp过滤器
1. jsp过滤器错误怎么处理
filter.EncodingFilter
不仅要配置,也要编译有这个类的class才行,WEB-INF\classes\filter\EncodingFilter.class
2. 学习jsp中过滤器遇到了问题
右击项目,重新构建一下类路径:
3. jsp过滤器怎么用
过滤器有很多种用法,可以配合Hibernate 自动提交事务,也可以给图片加水印,也可以限制某些文件不能被访问,也可以实现页面转码
出自我的QQ空间,有更多文章,
如BLOG ,网店上,都需要用到,带水印的图片, 通常是,用PS(photoshop) 先做出来PSD 的文件,用的时候,一张一张的向图片添加,此文章不介绍,PS 的制作技术,主要讲,用程序生成。
在JavaEE中有一种技术加 Servlet 其中包括 filter 过虑器,废话不多说,看源代码
// TODO Auto-generated method stub
HttpServletRequest request=(HttpServletRequest)arg0;
HttpServletResponse response=(HttpServletResponse)arg1;
/*************************************/
String filePath="D:/Tomcat 6.0/webapps/mytest3/img/logo.gif";//水印图片的路径
FileInputStream fin=new FileInputStream(filePath);//构建一个文件输入流
Image fimg=ImageIO.read(fin);//转为 Servlet 内置对象
int fw=fimg.getWidth(null);//获得宽度
int fh=fimg.getHeight(null);//高度
/*************************************/
String path=request.getRealPath(request.getServletPath());
FileInputStream in=new FileInputStream(path);
Image src=ImageIO.read(in);
int w=src.getWidth(null);
int h=src.getHeight(null);
BufferedImage img=new BufferedImage(w,h,BufferedImage.TYPE_INT_RGB);//构建画板
Graphics g=img.getGraphics();//得到画笔
g.drawImage(src,0,0,w,h,null);//此处为 imageIO.read ();//把源图片写入画板
g.drawImage(fimg,w-550,h-290,fw,fh,null);//把水印图片写入画板
g.dispose();//生成图片
JPEGImageEncoder e=JPEGCodec.createJPEGEncoder(response.getOutputStream());
e.encode(img);
response.getOutputStream().close();
在这里特别说明的是,水印的图片格式,一定要是.gif 的。
4. 如何编写jsp过滤器来过滤图片
给我你邮箱,我给你
5. jsp 过滤器过滤jsp和html怎么写
<servlet-mapping>
<servlet-name>servletname</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletname</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
6. jsp过滤器
以上的代码有没有filterConfig都一样。
通过这个对象我们可以获取在web.xml中配置filter时指定的filter参数值
例如定义个字符转码的过滤器,我并不想把具体的编码写在过滤器类里面,这时我就可以在web.xml中如下进行配置
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>com.mbframe.filter.EncodingFilter</filter-class>
<init-param>
<param-name>contentType</param-name>
<param-value>text/html;charset=UTF-8</param-value>
</init-param>
<init-param>
<param-name>charset</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
这是在过滤器类里就可以通过filterConfig.getInitParameter("charset")获取配置的UTF-8的编码格式,而如果想把编码改成GB2312则只需改动web.xml文件就行了,而不用改动过滤器类。
7. JSP过滤器的作用是什么用它有什么好处
过滤复器是一个对象,可以制传输请求或修改响应。它可以在请求到达Servlet/JSP之前对其进行预处理,而且能够在响应离开Servlet/JSP之后对其进行后处理。所以如果你有几个Servlet/JSP需要执行同样的数据转换或页面处理的话,你就可以写一个过滤器类,然后在部署描述文件(web.xml)中把该过滤器与对应的Servlet/JSP联系起来。你可以一个过滤器以作用于一个或一组servlet,零个或多个过滤器能过滤一个或多个servlet。一个过滤器实现java.servlet.Filter接口并定义它的三个方法:1. void init(FilterConfig config) throws ServletException:在过滤器执行service前被调用,以设置过滤器的配置对象。2. void destroy();在过滤器执行service后被调用。3. Void doFilter(ServletRequest req,ServletResponse res,FilterChain chain) throws IOException,ServletException;
8. jsp过滤器的三个方法 里面都要写些什么..
1. Servlet过滤器基础
Servlet过滤器是Servlet的一种特殊用法,主要用来完成一些通用的操作。比如编码的过滤,判断用户的登陆状态等等。Servlet过滤器的适用场合:
A.认证过滤
B.登录和审核过滤
C.图像转换过滤
D.数据压缩过滤
E.加密过滤
F.令牌过滤
G.资源访问触发事件过滤
Servlet过滤器接口的构成:
所有的Servlet过滤器类都必须实现javax.servlet.Filter接口。这个接口含有3个过滤器类必须实现的方法:
方法 说明
init(FilterConfig cfg) 这是Servlet过滤器的初始化方法,性质等同与servlet的init方法。
doFilter(ServletRequest,ServletResponse,FilterChain) 完成实际的过滤操作,当请求访问过滤器关联的URL时,Servlet容器将先调用过滤器的doFilter方法。FilterChain参数用于访问后续过滤器
destroy() Servlet容器在销毁过滤器实例前调用该方法,这个方法中可以释放Servlet过滤器占用的资源。,性质等同与servlet的destory()方法。
Servlet过滤器的创建步骤:
A.实现javax.servlet.Filter接口的servlet类
B.实现init方法,读取过滤器的初始化函数
C.实现doFilter方法,完成对请求或过滤的响应
D.调用FilterChain接口对象的doFilter方法,向后续的过滤器传递请求或响应
F.在web.xml中配置Filter
2.使用过滤器处理中文问题
当用用户登陆页面输入帐号时,如果输入是中文,后台servlet再次输出这个内容时,可能就会是乱码,这是因为serlvet中默认是以ISO-8859-1格式编码的,如果后台有多个Servlet,多个参数,这样就不合适,这个问题,我们可以通过一个过滤器统一解决,使后台的输出输出都支持中文!将ISO-8859-1转码为GBK的那段代码!
3.使用过滤器认证用户:
每个过滤器也可以配置初始化参数,可以将不需要过滤的地址配置到这个Filter的配置参数中,过滤时,如果请求地址在配置参数中,则放行,这样就避免了在程序中硬编码。每个Filter中初始化时,都可以得到配置对象,在Filter中配置二个不需要过滤的地址,一个是登陆页面,一个是执行登陆认证的servlet;
====华丽的分割线====
上面是理论知识
下面是实践写法
Filter中的三个方法其实只写doFilter方法,另外两个直接由父类实现即可。
下面给出doFilter方法覆盖例子:
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
//执行servlet处理请求响应前需要做的代码
chain.doFilter(request, response);
//执行servlet处理请求响应后要做的代码
}
9. jsp 配置过滤器 java放在哪
需要在来web.xml文件自中配置过滤器
<filter>
<filter-name>logonFilter</filter-name>
<filter-class>自己写的过滤器</filter-class>
</filter>
<filter-mapping>
<filter-name>logonFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>logonFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
10. 我的jsp过滤器为什么不起作用
有没有把
<filter>
<filter-name>codeFilter</filter-name>
<filter-class>com.lyx.util.CodeFilter</filter-class>
</filter>
<filter-mapping>
filter-name>codeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
放在最上面了?就是web里的版最上..不能比权servlet低.