ホームページ  >  記事  >  ウェブフロントエンド  >  AOP ページは、controller_html/css_WEB-ITnose には適用されません。

AOP ページは、controller_html/css_WEB-ITnose には適用されません。

WBOY
WBOYオリジナル
2016-06-24 11:51:011001ブラウズ

問題は次のとおりです

今日、コントローラーでaopが使えないことが分かりました。serviceに置き換えれば使えるようになります。junit-testでも使えますが、tomcatの下に置くことはできません。 。 私は混乱しています! ! !

package com.tutor.normal.filter;import javax.annotation.Resource;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.After;import org.aspectj.lang.annotation.AfterReturning;import org.aspectj.lang.annotation.AfterThrowing;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Before;import org.aspectj.lang.annotation.Pointcut;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import com.tutor.normal.service.ITutorUserService;/** *  * @author jinghao.liang *  */@Aspectpublic class TutorLoginAop {    private static Logger log = LoggerFactory.getLogger(TutorLoginAop.class);    @Resource(name = "tutorUserService")    private ITutorUserService tutorUserService;    @Pointcut("execution(* com.tutor.normal.controller..*.*(..))")    private void anyMethod() {    }// 定义一个切入点    @Before("anyMethod() && args(name)")    public void doAccessCheck(String name) {        System.out.println(name);        System.out.println("前置通知");    }    @AfterReturning("anyMethod()")    public void doAfter() {        System.out.println("后置通知");    }    @After("anyMethod()")    public void after() {        System.out.println("最终通知");    }    @AfterThrowing("anyMethod()")    public void doAfterThrow() {        System.out.println("例外通知");    }    @Around("anyMethod()")    public Object doBasicProfiling(ProceedingJoinPoint pjp) throws Throwable {        System.out.println("进入环绕通知");        Object object = pjp.proceed();// 执行该方法        System.out.println("退出方法");        return object;    }}

スプリング構成に加えて、これら 2 つ

    <aop:aspectj-autoproxy proxy-target-class="true"/>         <bean id="tutorLoginAop" class="com.tutor.normal.filter.TutorLoginAop" />

Nima、明らかにインターネット上のものと同じですが、状況はどうですか


1 日トラブルシューティングを行った後、最終的に問題が見つかりました。 Spring の設定は Spring ではなく springMVC で記述する必要があるということ

それはどういう意味ですか?私の web.xml の構成を見てください

うわー

構成を applicationContext.xml に書いたことがわかりましたが、当然、TVT は spring-servlet.xml に記述する必要があります。 。 。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。