`
huayu611
  • 浏览: 1562 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Spring配置介绍(二)

阅读更多

之前说过springbean,这篇我们看看spring aop

Aop对应的schemahttp://www.springframework.org/schema/aop,前缀aop

 

同样,我们看一下用xmlspy打开aopxsd, spring-aop-3.0.xsd


Config下面有三个节点。分别为pointcut,advisoraspect

pointcut


pointcut切入点。定义切点的地方。他有一个id,和一个表达式,

id是名字,可以在通知里配置这个id,而通知里不再需要定义pointcut了,可以通过ID引用。

expression这个是配置切入点的通配表达式

advisor



 
这里面有五个节点

id,是可选的,可以不配置,但如果想在后面的aspect调用,是需要给一个名字的,如果没有,spring会随机生成一个。

advice-ref:这人是必选项,是通知的类的引用,也就是是一个spring bean,而这个类要求是实现Advice接口。

pointcut:切点,与上一个节点的expression含义是一样的。

Pointcut-ref:切点引用,就是上一个点节的id

order次序,如果切面有多个通知,则可以使用order排序,order值小优先级高。这样就会实现多个织入顺序执行。

aspect


优先说节点

pointcut:切点,它和之前pointcut定义是一样的,两个属性,一个id,一个是expression

declare-parents:定义父类



 
他可以让一个指定规则的类,实现一个接口,与其说是让他实现接口,实际上他就像一个拦截器一样,对指定类,用代理转换

比如

<declare-parents types-matching=”com.x.A+” implement-interface=”com.x.I” default-impl=”com.x.C”  />

他含义是指,如果有A类来申请对象,那么这里会转换成代理类,而这个代理默认会实现三个接口,其中有一个就是I,默认实现为C。也就是说如果C配置了切面,那么这个类,会顺理成章的走进了通知的类里。这里面有一个需要注意的是,C的类需要实现I接口。

default-impldelegate-ref一个是配置类,一个是配置类的引用。

如果下面节点中有after,before,after-returning,after-throwing,around任意一个或多个,对于aspect节点中的属性,id,ref,order就需要有准确的值


当然id表示通知的名称,ref表式通知的引用,order表式次序

我们再看下面的节点

after是指在切面处执行之后 织入,如果切面方法出现异常,after也会执行,不会中断

before是指在切面处之前执行。

after-returning,是指在切面返回后再执行,这个时候 ,如果切面报错,则不会执行

after-throwing:如果切面有异常,会在异常执行完后,会通知执行。

around环绕执行,除非around会调用切面。不会切面将不会执行。

其实这五个属性都有些扩展属性


pointcutpoint-ref一个是配置切面 ,一个是配置切面引用。

method,通知的API

arg-name:由于织入的方法中没有切面信息,可以通知入参的方式进行传递

after-returning中含有returning,这个其实将返回结果传到织入的方法中

after-throwing中含有throwing,将异常传到织入的方法中

 

 

 

 

 

 

  • 大小: 10.3 KB
  • 大小: 7.8 KB
  • 大小: 11.9 KB
  • 大小: 11.7 KB
  • 大小: 16.6 KB
  • 大小: 12.2 KB
  • 大小: 7.9 KB
分享到:
评论

相关推荐

    spring配置 spring配置 spring配置 spring配置 spring配置

    spring配置 spring配置 spring配置 spring配置 spring配置

    ssm配置spring配置

    ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssmspring配置ssm...

    Spring配置加注释

    Spring配置 Spring 配置 映射 加注释!!!!Spring配置 Spring 配置 映射 加注释!!!!

    spring配置文件实例

    spring配置文件实例

    spring配置文件详细介绍

    下面是对Spring配置文件的详细介绍。 首先,Spring配置文件通常是以`.xml`为扩展名的文件,例如`beans.xml`。这些文件存储在项目的`src/main/resources`目录下,以便在运行时被自动加载。Spring容器...

    spring配置文件详解

    Spring 配置文件详解 Spring 配置文件是 Spring 框架中最重要的配置文件之一,它负责定义和配置应用程序的Bean对象,以及它们之间的依赖关系。Spring 配置文件通常以XML文件的形式存在,文件名通常为...

    spring配置文件

    spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件spring配置文件...

    Spring配置文件集合

    在本压缩包中,我们找到了一系列与Spring相关的配置文件,这些文件在构建JavaWeb应用时起着至关重要的作用。 1. `jdbc.properties`: 这个文件通常用于存储数据库连接的相关信息,如URL、用户名、密码等。它是Spring...

    Spring配置的5种方式

    ### Spring配置的5种方式详解 #### 一、引言 在Java开发领域,特别是针对企业级应用,Spring框架作为一款轻量级的容器管理工具,不仅提供了强大的依赖注入功能,还支持多种事务管理策略。Struts2+Spring+Hibernate...

    Spring的基本配置

    一、Spring配置概述 Spring的配置方式主要有两种:XML配置和Java配置。早期,XML配置是主流,而现在,随着Spring Boot的兴起,Java配置逐渐成为首选,因为它更加简洁和直观。不过,理解XML配置对于学习Spring的基础...

    SpringCloud——分布式配置中心(Spring Cloud Config)

    **二、配置仓库** Spring Cloud Config 支持多种类型的仓库,如 Git、Subversion 或本地文件系统。默认使用 Git,因为它提供了版本控制和历史记录功能,方便跟踪配置变更。 **三、配置服务器的启动** 要启动 Config...

    spring配置的简单案例.zip

    spring配置的简单案例.zip spring配置的简单案例.zip spring配置的简单案例.zip spring配置的简单案例.zip spring配置的简单案例.zip spring配置的简单案例.zip spring配置的简单案例.zip spring配置的简单案例.zip ...

    spring配置和启动方式

    spring配置和启动方式 博客地址:https://blog.csdn.net/u010476739/article/details/76696756

    Spring配置MySQL数据源

    连接MYSQL数据库,SPRING配置文件示例。

    spring配置步骤

    #### 二、Spring配置步骤 在实际项目中,Spring的配置通常涉及多个方面,包括环境搭建、依赖管理、配置文件编写等。下面将详细介绍这些步骤。 ##### 1. 下载Spring框架 首先,需要下载Spring框架。本例中提到的是...

    Spring 配置

    1.创建web工程 2.导入jar ...3.导入配置文件 spring-framework-2.5.6\samples\jpetstore\war\WEB-INF\log4j.properties spring-framework-2.5.6\samples\jpetstore\war \WEB-INF\applicationContext.xml

    Spring Boot中配置文件介绍及其使用教程

    Spring Boot中配置文件介绍及其使用教程所用到的Controller代码 Spring Boot中配置文件介绍及其使用教程所用到的Controller代码 Spring Boot中配置文件介绍及其使用教程所用到的Controller代码 Spring Boot中配置...

    spring二级缓存

    在提供的文件中,"Hibernate+ehcache二级缓存配置 - 王贵伟 - JavaEye技术网站.htm"和"spring中配置二级缓存.htm"可能详细介绍了这些步骤,并给出了具体配置示例。`caching`和`Hibernate+ehcache二级缓存配置 - 王...

    Spring Cloud配置中心获取不到最新配置信息的问题

    Spring Cloud配置中心获取不到最新配置信息的问题 Spring Cloud配置中心获取不到最新配置信息的问题是一个常见的问题,在微服务应用中,配置中心是非常重要的组件,它负责管理和分发配置信息。但是,如果配置中心出...

    Spring动态加载配置文件

    接下来,一旦检测到Spring配置文件发生变化,我们需要重新加载配置文件。这可以通过Spring的`ApplicationContext`的`refresh()`方法来实现。`refresh()`会重新初始化Bean工厂,读取新的配置信息,并更新所有Bean的...

Global site tag (gtag.js) - Google Analytics