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>