Spring Aop实例之xml配置_aop xml配置-程序员宅基地

技术标签: 攻克SSH框架  【SSH】  

       上篇博文《3幅图让你了解Spring AOP》中介绍了aop通知类型,AOP的配置方式有2种方式:xml配置和AspectJ注解方式。今天我们就来实践一下xml配置方式。


      我采用的jdk代理,所以首先将接口和实现类代码附上

package com.tgb.aop;

public interface UserManager {

	public String findUserById(int userId);
}


package com.tgb.aop;

public class UserManagerImpl implements UserManager {

	public String findUserById(int userId) {
		System.out.println("---------UserManagerImpl.findUserById()--------");
		if (userId <= 0) {
			throw new IllegalArgumentException("该用户不存在!"); 
		}
		return "张三";
	}
}

       单独写一个Advice通知类进行测试。这个通知类可以换成安全性检测、日志管理等等。

package com.tgb.aop;

import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.ProceedingJoinPoint;

/**
 * Advice通知类
 * 测试after,before,around,throwing,returning Advice.
 * @author Admin
 *
 */
public class XMLAdvice {

	/**
	 * 在核心业务执行前执行,不能阻止核心业务的调用。
	 * @param joinPoint
	 */
	private void doBefore(JoinPoint joinPoint) {
		System.out.println("-----doBefore().invoke-----");
		System.out.println(" 此处意在执行核心业务逻辑前,做一些安全性的判断等等");
		System.out.println(" 可通过joinPoint来获取所需要的内容");
		System.out.println("-----End of doBefore()------"
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xiaoxian8023/article/details/17258933

智能推荐

HTML表单input控件2_html input控件有哪些-程序员宅基地

文章浏览阅读318次。其他type值 搜索框: 隐藏框: 禁用框: 只读: 提交 _html input控件有哪些

无线网络-LTE (03) 通信过程之 TAU procedures -- with Serving GW change-程序员宅基地

文章浏览阅读1.9w次,点赞5次,收藏23次。当手机在GPRS网络或E-UTRAN网络中完成附着后,如果出现如下情况,会触发Tracking Area Update过程。- 手机发现进入到了一个新的TA,并且这TA不在TAIs 列表中。- 到了TA更新的周期- 当手机从UTRAN通过重选进入E-UTRAN时期状态为PMM_Connected。- 手机重选 E-UTRAN时,其状态为GPRS RE

不学了,不学了,不学Android了,干嘛一直逼我学“落伍”的技术-程序员宅基地

文章浏览阅读891次,点赞8次,收藏25次。算法知识点繁多,企业考察的题目千变万化,面对越来越近的“金九银十”,我给大家准备好了一套比较完善的学习方法,希望能帮助大家在有限的时间里尽可能系统快速的恶补算法,通过高效的学习来提高大家面试中算法模块的通过率。这一套学习资料既有文字档也有视频,里面不仅仅有关键知识点的整理,还有案例的算法相关部分的讲解,可以帮助大家更好更全面的进行学习,二者搭配起来学习效果会更好。部分资料展示:有了这套学习资料,坚持刷题一周,你就会发现自己的算法知识体系有明显的完善,离大厂Offer的距离更加近。

Guava学习笔记【9】:Guava新增集合类型-Bimap_guava定义的新类型-程序员宅基地

文章浏览阅读286次。BiMap提供了一种新的集合类型,它提供了key和value的双向关联的数据结构。  通常情况下,我们在使用Java的Map时,往往是通过key来查找value的,但是如果出现下面一种场景的情况,我们就需要额外编写一些代码了。首先来看下面一种表示标识序号和文件名的map结构。 @Test public void logMapTest(){ Map&lt;..._guava定义的新类型

CT、IT、OT、ICT究竟是什么?_通信技术ct的含义-程序员宅基地

文章浏览阅读782次,点赞6次,收藏7次。CT、IT、OT和ICT究竟是什么?_通信技术ct的含义

让新手快速精通Python拿高薪的方法有哪些?-程序员宅基地

文章浏览阅读65次。距“金九银十”年度涨薪黄金期愈发临近,大厂们早已经在准备好了高薪offer以迎人才。面对即将到来的跳槽好机会,初入门或者转行Python的朋友,如果想升职加薪跳槽大厂,该往哪些方面努力?随..._python精通拿的出手的技术

随便推点

Ubuntu下软件包的清理与删除_ubuntu 删除安装包-程序员宅基地

文章浏览阅读4.2k次,点赞3次,收藏14次。Ubuntu下软件包的清理与删除_ubuntu 删除安装包

Spring(学习笔记)-条件注解@Profile深入理解!-程序员宅基地

文章浏览阅读373次,点赞5次,收藏10次。条件注解,多环境切换

demod函数_(很实用,很好)用MATLAB 实现信号的调制与解调 调频 调相等-程序员宅基地

文章浏览阅读2.4k次。信号调制与解调[实验目的]1.了解用MATLAB实现信号调制与解调的方法。2.了解几种基本的调制方法。[实验原理]由于从消息变换过来的原始信号具有频率较低的频谱分量,这种信号在许多信道中不适宜传输。因此,在通信系统的发送端通常需要有调制过程,而在接收端则需要有反调制过程——解调过程。所谓调制,就是按调制信号的变化规律去改变某些参数的过程。调制的载波可以分为两类:用正弦信号作载波;用脉冲串或一组数字..._matlab demod函数

Latex表格标题左对齐,并且table加粗_latex中table两字加粗-程序员宅基地

文章浏览阅读2.8w次,点赞85次,收藏64次。首先在usepackage 区域输入以下内容\usepackage{booktabs}\usepackage{array, caption, threeparttable}\usepackage[font=small,labelfont=bf,labelsep=none]{caption}%表格编号Table 1 可以加粗显示\captionsetup[table]{ labelse..._latex中table两字加粗

UDP通信只收到一次数据_netty 服务端只接收一次数据-程序员宅基地

文章浏览阅读1.8k次。问题:在UDP接收数据时,只收到第一次数据,后续的数据无法收到。方法:因为缓冲区中的数据未提取阻塞,需要使用 receiveDatagram。_netty 服务端只接收一次数据

checkbox 实时操作,勾选后变色-程序员宅基地

文章浏览阅读2.3k次。 演示地址:http://www.corange.cn/demo/3695/&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;&lt;/_qtcheckbox点击复选框内变色

推荐文章

热门文章

相关标签