把applicationContext.xml贴出来
解决方案 »
- 界面使用了frameset标签布局后无法关闭当前页!急!在线等!!
- tomcat中工程部署不成功
- 急:struts里读取数据库后如何将数据保存在session里供登录成功后,跳转的页面使用改session数据
- jsp中遇到的大问题请大家帮忙
- 请教JDBC连Oracle的一个问题?
- 新手提一个棘手问题,请各位朋友帮帮忙。谢谢!(jsp+javabean+数据库)
- ★关于cookie的一个小小的问题!★
- 为什么???
- 关于连接池 connection pool!!!!!!(37分的问题,不够还可以加分!要多少分可以自己提)
- Webservice 如何传参调用
- 注解方式sessionFactory为空
- 关于axis2 RPC访问webservice 拿返回值的问题!!
<bean id="myAspect" class="com.ndvm.aspect.MyAspect"/>
<bean id="myAspect" class="com.ndvm.aspect.MyAspect"/>
还有其他配置吧,能不能不要弄一半出来呢?
<aop:config>
<aop:aspect id="methodAspect" ref="aspectBean">
<!--配置aop.chapter01.service包下所有类或接口的所有方法-->
<aop:pointcut id="methodPointCut" expression="execution(* aop.chapter01.service.*.*(..))" />
<!--<aop:before pointcut-ref="methodPointCut" method="doBefore"/>-->
<!--<aop:after pointcut-ref="methodPointCut" method="doAfter"/>-->
<aop:around pointcut-ref="methodPointCut" method="doAround"/>
<aop:after-throwing pointcut-ref="methodPointCut" method="doThrowing" throwing="ex"/>
</aop:aspect>
</aop:config> <bean id="aspectBean" class="aop.chapter01.advice.CallTrackAdvice"/>
package aop.chapter01.advice;import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.ProceedingJoinPoint;
import util.LogUtil;/**
* 切面: Advice 是 Aspect 的具体实现
*/
public class CallTrackAdvice {
public static int steps = 1; public void doBefore(JoinPoint jp) {
String className = jp.getTarget().getClass().getName();
String methodName = jp.getSignature().getName();
LogUtil.getLogger().info(String.format("[%d: BEFORE METHOD]: %s.%s()", steps++, className, methodName));
} public void doAfter(JoinPoint jp) {
String className = jp.getTarget().getClass().getName();
String methodName = jp.getSignature().getName();
LogUtil.getLogger().info(String.format("[%d: AFTER METHOD]: %s.%s()\n", steps++, className, methodName));
} public Object doAround(ProceedingJoinPoint pjp) throws Throwable {
String className = pjp.getTarget().getClass().getName();
String methodName = pjp.getSignature().getName();
int sn = steps++; LogUtil.getLogger().info(String.format("[%d: BEFORE METHOD]: %s.%s()", sn, className, methodName)); long time = System.currentTimeMillis();
Object retVal = pjp.proceed();
time = System.currentTimeMillis() - time; LogUtil.getLogger().info(String.format("[%d: EXECUTE METHOD]: %s.%s() %dms", sn, className, methodName, time));
LogUtil.getLogger().info(String.format("[%d: AFTER METHOD]: %s.%s()\n", sn, className, methodName)); return retVal;
} public void doThrowing(JoinPoint jp, Throwable ex) {
String className = jp.getTarget().getClass().getName();
String methodName = jp.getSignature().getName();
LogUtil.getLogger().info(String.format("[%d: THROW EXCEPTION]: %s.%s()\n", steps++, className, methodName));
LogUtil.getLogger().info(ex.getMessage());
}
}