java - AspectJ 与 SpringAOP 的 Aspect 不起作用

标签 java spring aop aspectj

我知道有很多问题都有同样的问题,但我真的不明白问题是什么,因为我尝试从头开始遵循很多流行的教程,但它仍然不起作用。

我请你在这里看看我的项目 link to github并给出一条建议,因为我真的放弃了让它发挥作用。

我使用 Eclipse Luna + Tomcat 7,其他的东西你可以从 github 上看到,因为这里真的不方便把所有东西都过去。

<小时/>

已解决:实际上,我认为我需要更具体地说明我为解决这个难题所做的事情:@tmarwen 给了我一个很好的提示,说明了可能出现的问题,我测试并发现我的 dao-context.xml 没有根本不实例化bean。所以我移动了所有 bean 实例化和 <aop:aspectj-autoproxy />到单独的config.xml文件在 WEB-INF以及web.xml文件。之后一切开始完美运行。

最佳答案

首先要注意的是,您在 web.xml 文件下的根应用程序配置文件路径中引入了拼写错误:

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:coms/config/dao-context.xml</param-value>
</context-param>

虽然应该如下所示(coms,没有 s):

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:com/config/dao-context.xml</param-value>
</context-param>

另一个提示是上下文配置文件位置,我敢打赌它在构建时不会被解释为资源文件。

由于您使用Maven作为构建工具,因此您可能需要将文件位置更改为src/main/resoures 目录(默认目录作为 Maven 的资源位置),因此项目根文件夹的整个路径将是:

  • src/main/resoures/com/config/dao-context.xml

关于java - AspectJ 与 SpringAOP 的 Aspect 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29191992/

相关文章:

java - Spring项目突然无法加载上下文 - 没有代码更改

c# - 使用属性检查是否访问方法

java - Spring @Around 用于异常处理

java - 无法在 AWS pinpoint 上发送语音消息

java - 使用 do-while 循环并找出两个数字之间的差异

java - 如何在Java中将csv字节字符串转换为字节数组?

java - @RequestParam注解

java - 在 Java 中解决简单的字符串表达式 (1+2*3) [几乎完成]

spring - 在 STS 3.1 的 Spring Data JpaRepository 接口(interface)中到处出现 "Invalid derived query"错误

java - 好奇的Spring AOP异常