spring aop操作

来源:互联网 发布:游戏的网络销售怎么样 编辑:程序博客网 时间:2024/06/05 07:58

1.spring aop操作,使用Aspectj实现

(1)Aspectj不会spring的一部分,是和spring一起使用完成aop操作

(2)Spring2.0以后,新增了对Aspectj的支持

2.使用Aspectj实现aop操作的两种方式

(1)基于aspectj的xml配置

-- jar包


下载地址:

-- 创建核心配置文件,引入aop约束

<beans xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">

-- 表达式定义切入点

详细了解访问:http://blog.csdn.net/m0_37983376/article/details/73740390

-- 核心配置文件

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">                <bean id="userDao" class="com.sq.service.UserDao"></bean><bean id="userService" class="com.sq.service.UserService"></bean><!-- 配置aop操作 --><aop:config><!-- 配置切入点 --><aop:pointcut expression="execution(* com.sq.service.UserDao.*(..))" id="pointcut1"/><!-- 配置切面把增强用到方法上面 --><aop:aspect ref="userService"><!-- 配置增强类型增强类里面使用哪个方法作为前置 --><aop:before method="add" pointcut-ref="pointcut1"/></aop:aspect></aop:config></beans>


(2)基于aspectj的注解方式

-- 第一步:通过spring配置文件创建对象

-- 第二步:在spring配置文件中开启aop操作

<aop:aspectj-autoproxy></aop:aspectj-autoproxy>

-- 第三步:配置增强类

package com.sq.user;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Before;/** *@author sq * */@Aspectpublic class Method {@Before(value="execution(* com.sq.user.*.*(..))")public void sing(){System.out.println("sing...");}}