A. spring中配置过滤器的一个疑问。
嗯 ...楼主说的很明白,业务类(ServiceIMP)及注入,调用 都没有问题
既然项目中加入了filter 那么就是通过spring在filter注入bean
将filter注入Spring 而不是单纯的把业务类注入生成getter setter,让filter调用就可以了。在spring中,filter被纳入了bean 管理机制。
如Spring注入过滤器配置
<bean id="myFilter" class="com.MyFilter"> //指名具体的filter类
<property name="service"> //需要注入的具体参数
<ref bean="service"/>
</property>
</bean>
这样吧 这有个简单实例,给你参考一下:
http://www.iwangyu.com/index.php/archives/309
如果只凭配置信息看不明白,还有个简单的例子你看一下:
http://hi..com/anglee2010/blog/item/bc51ab3f11ffc13371cf6c28.html
应该差不多了...
工作日可以随时 Hi 我
B. 如何配置struts2的过滤器
你说的是拦截器吧
第一步:创建一个类实现Intercepter接口并实现其中方法
第二步:注册拦截器(在struts.xml)如:
<package name="cust"
namespace="/cust"
extends="struts-default">
<interceptors>
<!-- 注册拦截器 -->
<interceptor name="first"
class="com.interceptor.FirstInterceptor"/>
<interceptor name="second"
class="com.interceptor.SecondInterceptor"/>
<!-- 注册拦截器栈,将所有拦截器打包在一起 -->
<interceptor-stack name="mystack">
<interceptor-ref name="first"/>
<interceptor-ref name="second"/>
<!-- 引用自定义的拦截器时,会使struts2自带的拦截器失效
因此,要将默认的拦截器加入到自定义的拦截器栈中 -->
<interceptor-ref name="defaultStack"/>
</interceptor-stack>
</interceptors>
<!--第三步: 引用拦截器 ,
<action name="toUpdateCustomer"
class="com.action.ToUpdateCustomerAction"
method="execute">
<!-- 引用拦截器 ,
<interceptor-ref name="first"/>
<interceptor-ref name="first"/>-->
<!-- 引用拦截器栈,会一次将所有的拦截器引用 -->
<interceptor-ref name="mystack"/>
<result name="success">
/WEB-INF/cust/update_customer.jsp
</result>
</action>
</package>
供参考
C. 过滤器的注解配置问题
1、通过创建FilterRegistrationBean的方式(建议使用此种方式,统一管理,且通过注解的方式若不是本地调试,如果在filter中需要增加cookie可能会存在写不进前端情况)
2、通过注解@WebFilter的方式
通过创建FilterRegistrationBean的方式创建多个filter以及设置执行顺序:
D. Struts2入口过滤器配置
本人试验了一下配置成*.action index.jsp是可行的,不过一般情况下是配置成/*的 然后结合版struts.properties文件里面的struts.action.extension(定义扩权展名,例如.do,.action等等,多个扩展名中间用逗号隔开)值使用,楼主你最好检查下你的服务器启动日志 看看项目是否正常启动。
E. 如何配置Filter过滤器处理JSP中文乱码
注意问题:在学习用selvert的过滤器filter处理中文乱码时,在filter配置初始化时用了utf-8处理中文乱码,而在提交的jsp页面中却用了gbk。虽然两种都可以出来中文乱码,但是却造成了处理乱码的格式不一致。所以编译出错。
解决方法:所有地方都用utf-8或gbk
//过滤器类
CharactorFilter.jsp
package cn.com.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 CharactorFilter implements Filter { //继承Filter类
//字符编码
String encoding=null;
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if(encoding!=null){
//设置request字符编码
request.setCharacterEncoding(encoding);
//设置response字符编码
response.setContentType("text/html;charset="+encoding);
}
//传递给下一个过滤器
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws ServletException {
//获取初始化参数
encoding=filterConfig.getInitParameter("encoding");
}
public void destroy() {
// TODO Auto-generated method stub
encoding=null;
}
}
web.xml
<filter> <!--注意这里是filter,不要配置成servlet-->
<filter-name>CharactorFilter</filter-name> <!--过滤器名称-->
<filter-class>cn.com.Filter.CharactorFilter</filter-class> <!--过滤器的完整类名-->
<init-param> <!--初始化参数-->
<param-name>encoding</param-name> <!--参数名称-->
<param-value>utf-8</param-value> <!--参数值-->
</init-param>
</filter>
<filter-mapping> <!--过滤器映射-->
<filter-name>CharactorFilter</filter-name><!--过滤器名称-->
<url-pattern>/*</url-pattern><!--URL映射,给所有页面处理乱码-->
</filter-mapping>
F. 配置filter的优先级配置
这个不可以实现 他不是servlet servlet可以通过优先级来配置 filter是按照配置的先后顺序执行的
G. Filter过滤器中指定过滤内容怎么配置
servlet的这个 是不来是需要把每源一个的servlet都写进
“servlet位置”? 回答: 每个servlet都要在web.xml里配置,难道有没配的? 追问: 有~~ 每个都有 就是觉得要是每个都写一边那么会不会造成代码冗余
假设servlet的配置
/LoginServlet
/RegisterServlet
加入到过滤器的中
那个后缀的看起来还不错 具体能给个写法看写么? 回答: 比如servlet配置后缀
/LoginServlet.jspx
/RegisterServlet.jspx那filter/*.jspx再如servlet配置路径
H. 森森鱼缸过滤水很浑浊,过滤器加配置的话应该怎么选择原装的配置看下面的照片。
原装的一般够用,过滤棉要经常换或者清洗,大约3~4天一次,每周或10天换3分之一的水
I. 过滤器的配置
工业过滤器是输送介质管道上不可缺少的一种装置,通常安装在减压阀、泄压阀、定水专位阀 ,方工过属滤器其它设备的进口端设备。其主要是由由筒体、不锈钢滤网、排污部分、传动装置及电气控制部分组成。
在这里为大家推荐一款过滤中常见的过滤器-多袋快开过滤器,是适用于高流量及频繁更换滤袋的一种快捷、高效过滤设备。这种过滤器主要作用于电子、半导体、化工、制药、食品饮料、造纸等各种工业领域。
J. 过滤器<filter>配置的位置
在WEB-INF下面的web.xml里面配置。例如:
<filter>
<filter-name>projectFilter</filter-name>
<filter-class>com.bruce.filter.ProjectFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>projectFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>