中易网

Spring AOP 问题,如何引用DAO层的方法?

答案:3  悬赏:60  
解决时间 2021-04-27 13:02
  • 提问者网友:烟刺痛了眼
  • 2021-04-27 07:07
public class UserSerImpl implements UserSer {
UserMapper um;
@Override
public void DeleteTest(String uid) {
um.selectAll();
// System.out.println("删除成功");
}
<!--beans 如下-->

<bean id="userService" class="app.home.service.impl.UserSerImpl"/>
<bean id="logBeforeAdvice" class="app.home.service.LogBeforeAdvice"/>
<bean id="logAfterAdvice" class="app.home.service.LogAfterAdvice"/>

<bean id="factory" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces" value="app.home.service.UserSer"/>
<property name="target" ref="userService"/>
<property name="interceptorNames">
<list>
<!--<value>logBeforeAdvice</value>-->
<value>logAfterAdvice</value>
</list>
</property>
</bean>
异常

Exception in thread "main" java.lang.NullPointerException
at app.home.service.impl.UserSerImpl.DeleteTest(UserSerImpl.java:13)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.aop.framework.adapter.AfterReturningAdviceInterceptor.invoke(AfterReturningAdviceInterceptor.java:50)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy0.DeleteTest(Unknown Source)
at app.home.test.TestAOP.main(TestAOP.java:15)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)

Process finished with exit code 1

问题解决了,确实没有引用到Dao方法,学习了Spring AOP,太棒了~
最佳答案
  • 二级知识专家网友:陪我到地狱流浪
  • 2021-04-27 07:24
<script type="text/javascript">
Leaf leaf = new Leaf("Leaf D");
root.Add(leaf);
root.Remove(leaf);
root.Display(1);
Console.Read();
}
全部回答
  • 1楼网友:一起来看看吧
  • 2021-04-27 08:43
贴出你的main方法看看
  • 2楼网友:何必打扰
  • 2021-04-27 08:14
貌似你的UserMapper um; 没有初始化没有实例..
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息