姿姿霸霸~~!
貴在堅持!
BlogJava
首頁
新文章
新隨筆
聚合
管理
posts - 106, comments - 50, trackbacks - 0
aop攔截springmvc的action不成功!(已解決)
今天做了個aop的試驗,對于springmvc的action不能攔截成功,研究了很久,沒有找到問題,所以請教下大家.
下面是代碼:
1.springmvc的action:
package
com.sure.demo.web;
import
java.util.Date;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
org.springframework.web.servlet.ModelAndView;
import
org.springframework.web.servlet.mvc.multiaction.MultiActionController;
public
class
DemoTestAction
extends
MultiActionController
{
//
返回的test頁面
private
String testPage;
public
String getTestPage()
{
return
testPage;
}
public
void
setTestPage(String testPage)
{
this
.testPage
=
testPage;
}
/**
* test入口
*
@param
request
*
@param
response
*
@return
*
@throws
Exception
*/
public
ModelAndView test(HttpServletRequest request,
HttpServletResponse response)
throws
Exception
{
ModelAndView mav
=
null
;
mav
=
new
ModelAndView(
this
.getTestPage());
request.setAttribute(
"
test
"
,
new
Date().toString());
return
mav;
}
}
2.jsp代碼:
<%
@ page language
=
"
java
"
import
=
"
java.util.*
"
pageEncoding
=
"
gb2312
"
%>
<%
String
test
=
(
String
)request.getAttribute(
"
test
"
);
%>
<!
DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>
<
html
>
<
head
>
</
head
>
<
body
>
當前時間是:
<%
=
test
%>
<
br
>
</
body
>
</
html
>
3.aop代碼:
package
com.sure.aopdemo;
import
org.aspectj.lang.JoinPoint;
public
class
AopDemoTestImpl
{
public
void
afterTest(JoinPoint joinPoint)
{
System.out.println(
"
aop--執行類:
"
+
joinPoint.getThis()
+
"
的
"
+
joinPoint.getSignature().getName()
+
"
方法之后
"
);
}
public
void
beforeTest(JoinPoint joinPoint)
{
System.out.println(
"
aop--執行類:
"
+
joinPoint.getThis()
+
"
的
"
+
joinPoint.getSignature().getName()
+
"
方法之前
"
);
}
public
void
exceptionTest()
{
System.out.println(
"
aop方法異常
"
);
}
}
4.xml關于aop的配置:
<?
xml version="1.0" encoding="UTF-8"
?>
<
beans
xmlns
="http://www.springframework.org/schema/beans"
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop
="http://www.springframework.org/schema/aop"
xmlns:tx
="http://www.springframework.org/schema/tx"
xsi:schemaLocation
="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"
>
<
bean
id
="aopDemoTestImpl"
class
="com.sure.aopdemo.AopDemoTestImpl"
></
bean
>
<
aop:config
>
<
aop:aspect
id
="test"
ref
="aopDemoTestImpl"
>
<
aop:pointcut
id
="a"
expression
="execution(* com.sure.demo..*.*(..))"
/>
<
aop:before
method
="beforeTest"
pointcut-ref
="a"
/>
<
aop:after
method
="afterTest"
pointcut-ref
="a"
/>
<
aop:after-throwing
method
="exceptionTest"
pointcut-ref
="a"
/>
</
aop:aspect
>
</
aop:config
>
</
beans
>
posted on 2008-09-22 23:19
xrzp
閱讀(7669)
評論(11)
編輯
收藏
所屬分類:
JAVA
FeedBack:
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-23 08:43 |
toby941
spring的Controller方法是不能AOP攔截的
不是有專門的攔截器么
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-23 08:44 |
隔葉黃鶯
你的 Action 要是通過 Spring IOC 容器創建的實例才能攔截到。
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-23 11:17 |
sure_xx
@隔葉黃鶯
暈,我在配置文件里面,都寫了這些bean的.我發個郵件給你看哈.謝謝.
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-23 17:15 |
隔葉黃鶯
application-context.xml 中的 aop 配置似乎影響不到 app-servlet.xml,他們不被同時解析處理的,試著把對 controller 的 aop 控制的配置移到 app-servlet.xml 中看看。
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-24 10:21 |
隔葉黃鶯
用你發給我的代碼,執行沒問題:
訪問地址:
http://localhost:8080/TestSpring2/demoTest.do?method=test
頁面輸出:
當前時間是:Wed Sep 24 10:08:55 CST 2008
gavin:抽煙中……
控制臺輸出:
aop--執行類:com.sure.demo.biz.DemoTestBiz@1887735的testBiz方法之前
執行BIZ..
aop--執行類:com.sure.demo.dao.DemoTestDaoImpl@1fff293的testDao方法之前
執行DAO..testMap
aop--執行類:com.sure.demo.dao.DemoTestDaoImpl@1fff293的testDao方法之后
aop--執行類:com.sure.demo.biz.DemoTestBiz@1887735的testBiz方法之后
你在日志中應該要把問題描述清楚。
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-24 16:32 |
sure_xx
@隔葉黃鶯
我的意思是沒有攔截到
com.sure.demo.web.DemoTestAction 這個類里面的方法.控制臺輸出的都是攔截的biz和dao的信息
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-24 17:57 |
隔葉黃鶯
從顯示那兩個對象來看,確實是 Spring Aop 沒有對 DemoTestAction 作特殊處理
demoTestBiz
(com.sure.demo.biz.DemoTestBiz$$EnhancerByCGLIB$$5a2f8a7b) com.sure.demo.biz.DemoTestBiz@6ffb14
this
(com.sure.demo.web.DemoTestAction) com.sure.demo.web.DemoTestAction@1155013
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-24 18:52 |
隔葉黃鶯
spring mvc 的 HandlerMapping 有自己的 Interceptor,要實現接口 org.springframework.web.servlet.HandlerInterceptor,其中有 preHandle()、postHandle()、afterCompletion() 方法可監視 action 的執行,但在這幾個方法中能獲取到的信息不詳細,但可以用來具體控制 Action 執行前后的行為。假如這個攔截類是
DemoActionHandlerInterceptor,這個實例需要配置給 HandlerMapping,配置方法如下:
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/demoTest.do">demoTest</prop>
</props>
</property>
<property name="interceptors">
<list>
<bean class="com.sure.aopdemo.DemoActionHandlerInterceptor"/>
</list>
</property>
</bean>
回復
更多評論
#
re: aop攔截springmvc的action不成功!請教~~~~~~
2008-09-24 19:49 |
sure_xx
@隔葉黃鶯
謝謝黃鶯哈!問題解決了!就是像最后寫的那樣.自己寫一個繼承了HandlerInterceptor接口的類,然后再在里面重寫3個方法就能解決了.
再次謝謝哈!
回復
更多評論
#
re: aop攔截springmvc的action不成功!(已解決)
2008-12-02 11:42 |
娃娃
你成功的代碼能否發下出來啊?
回復
更多評論
#
re: aop攔截springmvc的action不成功!(已解決)
2014-07-29 11:35 |
sql吧
樓主最后還有用攔截器的方式解決的??????
spring mvc aop 不可以嗎??????
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
hello,架構world
什么是可滾動的ResultSet
按長度分割字符串,遇到中文的處理
同時使用struts2和springMVC需要注意的事項
獲取有路徑的文件的文件名
小數點后面保留幾位的格式
使用tomcat時,在IE中能自動打開excel
使用spring發送郵件
spring配置事務
aop攔截springmvc的action不成功!(已解決)
<
2014年7月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(4)
給我留言
查看公開留言
查看私人留言
隨筆分類
db2(2)
JAVA(29)
js(9)
linux/unix(7)
oracle-asm(1)
oracle-rac(5)
oracle-優化(5)
oracle-基礎(31)
oracle-備份恢復(16)
存儲(2)
隨筆檔案
2012年4月 (1)
2011年11月 (2)
2011年10月 (13)
2011年9月 (1)
2011年8月 (2)
2011年7月 (2)
2011年6月 (5)
2011年5月 (16)
2011年4月 (3)
2011年1月 (1)
2010年12月 (8)
2010年7月 (1)
2010年6月 (3)
2010年5月 (3)
2010年1月 (1)
2009年9月 (1)
2009年4月 (3)
2009年3月 (1)
2008年10月 (2)
2008年9月 (1)
2008年8月 (3)
2008年7月 (1)
2008年4月 (1)
2008年3月 (1)
2008年2月 (1)
2007年7月 (2)
2007年6月 (1)
2007年5月 (7)
2007年4月 (1)
2007年3月 (2)
2007年1月 (12)
2006年12月 (1)
2006年10月 (3)
好友的blog
霸霸的blog
風風的BLOG
搜索
積分與排名
積分 - 117425
排名 - 500
最新評論
1.?re: 解決ORA-00600: 內部錯誤代碼, 參數: [4194], [15], [8][未登錄]
謝謝,解決了大問題
--linda
2.?re: aop攔截springmvc的action不成功!(已解決)
樓主最后還有用攔截器的方式解決的??????
spring mvc aop 不可以嗎??????
--sql吧
3.?re: 去除空格的js 和 使用正則表達式替換
dfasfdsa
-- fff fddd
4.?re: 什么是table函數(收集)
也就是說,我好不容易達到了你2年前的水平
--Jcat
5.?re: db2降低hwm(V9.7)
評論內容較長,點擊標題查看
--劉邦
閱讀排行榜
1.?解決ORA-30036:無法按8擴展段(18095)
2.?解決ORA-00600: 內部錯誤代碼, 參數: [4194], [15], [8](9790)
3.?去除空格的js 和 使用正則表達式替換(8982)
4.?aop攔截springmvc的action不成功!(已解決)(7669)
5.?判斷一個JS對象是否為空(6743)
評論排行榜
1.?aop攔截springmvc的action不成功!(已解決)(11)
2.?使用spring發送郵件(4)
3.?計算任何一天是星期幾的算法(拿來主義)(3)
4.?JAVA中日期的問題(3)
5.?j2EE中的過濾器的用法(過濾亂碼)(2)
Copyright ©2025 xrzp Powered By
博客園
模板提供:
滬江博客
主站蜘蛛池模板:
免费观看亚洲人成网站
|
久久经典免费视频
|
亚洲性在线看高清h片
|
免费精品视频在线
|
亚洲精品乱码久久久久久蜜桃
|
无码色偷偷亚洲国内自拍
|
婷婷亚洲天堂影院
|
久久精品成人免费观看97
|
亚洲国产a∨无码中文777
|
免费女人高潮流视频在线观看
|
亚洲黄色在线视频
|
毛片免费在线播放
|
国产成人高清亚洲一区久久
|
国产乱辈通伦影片在线播放亚洲
|
三级毛片在线免费观看
|
日产亚洲一区二区三区
|
蜜桃视频在线观看免费网址入口
|
亚洲高清乱码午夜电影网
|
亚洲一区视频在线播放
|
国内精品免费视频精选在线观看
|
亚洲精品亚洲人成在线麻豆
|
在线看片人成视频免费无遮挡
|
亚洲aⅴ无码专区在线观看
|
精品国产日韩亚洲一区
|
67194国产精品免费观看
|
亚洲精品无码不卡在线播放
|
亚洲一级特黄大片无码毛片
|
日韩人妻一区二区三区免费
|
亚洲日产乱码一二三区别
|
国产精品亚洲产品一区二区三区
|
中文字幕无码日韩专区免费
|
亚洲精品日韩中文字幕久久久
|
全免费a级毛片免费**视频
|
精选影视免费在线
|
亚洲成综合人影院在院播放
|
免费观看国产精品
|
日韩成人免费视频
|
亚洲人成色4444在线观看
|
亚洲色无码专区在线观看
|
成人免费午间影院在线观看
|
女同免费毛片在线播放
|