`
dojax
  • 浏览: 2081 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Schema-based AOP的配置问题

阅读更多
目前正在开发应用了Schema-based   AOP的项目,一直用在参考《spring开发参考手册》         在配置AOP的时候发现一些问题:
配置文件如下:
  <aop:aspect   id="prefixAspect3"   ref="logInterceptor">
      <aop:pointcut   id="prefixPointCutQuery"
                expression="execution(*   services.OcsServices.query(Object,   int,   int))   and   args(Object,   int,   int)"   />
            <!--
            <aop:pointcut   id="prefixPointCutQuery"
                  expression="execution(*   services.OcsServices.query(Object,   int,   int))   and   args(o,   page,   perpage)"   />            
            -->  

            <aop:after-returning
                  pointcut-ref="prefixPointCutQuery"
                  returning="retVal"
                  method="afterAddReturn"/>
        </aop:aspect>        
    </aop:config>

services.OcsServices.query方法如下:
public List query(Object   o,   int   page,   int   perpage){
      ....
}

LogAop的afterAddReturn方法如下:
public   void   afterAddReturn(Object   retVal){
        System.out.println(retVal);
}

如果按照参考手册的例子来,expression="execution(* services.OcsServices.query(Object, int,   int)) and args(o, page, perpage)"才是正确的配置,但是实际情况是这样配置,将报错aop warning no  match for this type name o
而如果用expression="execution(* services.OcsServices.query(Object, int, int)) and args(Object, int, int)"则能正确使用aop, 不知这是什么原因?

还希望大大们能指导指导,谢谢
分享到:
评论

相关推荐

    spring入门学习-6、AOP几种配置方式详解.pdf

    Schema-based 的 AOP 是一种基于 XML 配置的方式来实现 AOP 的方式。这种方式允许开发者在 Spring 的配置文件中直接声明 AOP 的切面、切入点以及通知等元素,而无需编写复杂的 Java 代码。 - **切面声明**:使用 `...

    Spring AOP之基于Schema配置总结与案例

    **Spring AOP:基于Schema配置的总结与案例** 在Java企业级开发中,Spring框架以其强大的功能和灵活性深受开发者喜爱。其中,Spring AOP(面向切面编程)是解决横切关注点问题的一个重要工具,它允许我们把业务逻辑...

    springMVC学习

    Spring支持两种类型的AOP:Schema-based AOP和Annotation-based AOP(基于@AspectJ的AOP)。 #### 2. AOP的HelloWorld - 实现一个简单的AOP示例,比如添加日志记录功能,可以帮助理解AOP的基本用法。 #### 3. 基于...

    第三章:Spring AOP API 设计与实现1

    22. **Schema-based配置**:包括 `&lt;aop:config/&gt;`, `&lt;aop:aspect/&gt;`, `&lt;aop:pointcut/&gt;`, `&lt;aop:around/&gt;`, `&lt;aop:before/&gt;`, `&lt;aop:after/&gt;`, `&lt;aop:declare-parents/&gt;`, 和 `&lt;aop:scoped-proxy/&gt;`,这些XML元素...

    Spring AOP源码深度解析:掌握Java高级编程核心技术

    **Schema-based配置**使用Spring的AOP命名空间,直接在XML中定义切面。**@AspectJ注解配置**是最为直观的方式,通过在切面类上使用@Aspect、@Pointcut、@Before等注解,可以直接在Java代码中声明切面逻辑。 Spring ...

    spring2.5+xfire1.2.6 客户端和服务端的配置

    3. **XML Schema-based配置**:Spring 2.5开始支持XML Schema配置,使得配置文件更加结构化和易于理解。 4. **更多Bean定义语法**:增加了对Java 5注解的支持,可以使用注解来定义Bean及其属性。 **Xfire 1.2.6**:...

    spring学习笔记LBY.pdf

    - **基于XML的配置**(Schema-based):这种方式需要在Spring配置文件中显式地指定切点和通知。 - **基于AspectJ**:这是一种更加强大的AOP实现,支持在编译时和运行时注入AOP逻辑,通常用于大型项目中。 3. **...

    spring2.5学习笔记

    - **XML Schema-based配置**:Spring 2.5引入了基于XML Schema的配置,使得配置更规范,更易于理解和维护。 - **注解驱动的配置**:虽然示例中没有涉及,但Spring 2.5引入了对Java注解的支持,如`@Autowired`、`@...

    spring chm文档

    6.3. Schema-based AOP support 6.3.1. 声明一个切面 6.3.2. 声明一个切入点 6.3.3. 声明通知 6.3.4. 引入 6.3.5. 切面实例化模型 6.3.6. Advisors 6.3.7. 例子 6.4. AOP声明风格的选择 6.4.1. Spring AOP...

    Spring-Reference_zh_CN(Spring中文参考手册)

    6.3. Schema-based AOP support 6.3.1. 声明一个切面 6.3.2. 声明一个切入点 6.3.3. 声明通知 6.3.3.1. 通知(Advice) 6.3.3.2. 返回后通知(After returning advice) 6.3.3.3. 抛出异常后通知(After throwing ...

    实例讲解Java的Spring框架中的AOP实现

    1. 基于模式(Schema-based)的AOP:使用XML配置文件定义切面、切点和通知,适合不支持注解的旧版Java环境。 2. @AspectJ注解驱动的AOP:使用Java 5及以上版本的注解来定义切面,更加直观且易于理解和维护。 实例...

    Spring 2.0 中文用户指南.pdf

    4.2 提供了XML Schema-based配置,使得配置文件更加简洁易读。 五、测试支持 5.1 Spring 2.0提供了强大的测试支持,包括单元测试和集成测试工具,如Spring Test和Mock Objects,使得测试工作更加便捷。 六、Maven...

    springmvc入门

    - `org.springframework.aop-3.0.5.RELEASE.jar`: AOP 相关的支持。 - `org.springframework.beans-3.0.5.RELEASE.jar`: 提供了 bean 操作的基础支持。 - `org.springframework.context-3.0.5.RELEASE.jar`: 提供...

    Spring 2.0 开发参考手册

    6.3. Schema-based AOP support 6.3.1. 声明一个切面 6.3.2. 声明一个切入点 6.3.3. 声明通知 6.3.4. 引入 6.3.5. 切面实例化模型 6.3.6. Advisors 6.3.7. 例子 6.4. AOP声明风格的选择 6.4.1. Spring AOP...

    spring-framework2.5.6

    2. **注解驱动开发(Annotation-based Development)**:2.5.6版本中,Spring引入了大量注解,如@Service、@Controller、@Repository等,使得基于注解的编程变得更加便捷,减少了XML配置文件的体积,简化了配置过程...

    jsr168 portlet(struts2+spring2.5+hibernate3.3)(转载)

    Spring 2.5版本引入了更多改进,如支持注解配置、更灵活的AOP、XML Schema-based配置等,增强了应用程序的可维护性和可测试性。 3. **Hibernate3.3**:Hibernate是一个对象关系映射(ORM)框架,它简化了数据库操作...

    Spring中文帮助文档

    3.11. 基于注解(Annotation-based)的配置 3.11.1. @Autowired 3.11.2. 基于注解的自动连接微调 3.11.3. CustomAutowireConfigurer 3.11.4. @Resource 3.11.5. @PostConstruct 与 @PreDestroy 3.12. 对受管...

    Spring API

    3.11. 基于注解(Annotation-based)的配置 3.11.1. @Autowired 3.11.2. 基于注解的自动连接微调 3.11.3. CustomAutowireConfigurer 3.11.4. @Resource 3.11.5. @PostConstruct 与 @PreDestroy 3.12. 对受管...

    常用的jar包

    这个过程叫做Schema-Based Java Generation,使得XML文档的处理更高效,同时也保持了与XML Schema的强类型绑定。 8. **guava-18.0.jar**:Google Guava是Google提供的一个大型Java库,包含了很多实用工具类,如集合...

    XiorkFlow工作流设计器概要文档

    - **Macromedia Flash-based solutions**:利用Flash的复杂矢量数据播放特性,以及其可交互性和可编程性,提供更加直观的用户界面。 - **Java Web Start and related technologies**:利用Java Web Start技术,...

Global site tag (gtag.js) - Google Analytics