`
gaojian881
  • 浏览: 7199 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

aj通知函数

 
阅读更多

MyAspectj中的代码:

package com.gaojian.aspectj.test;

public aspect MyAspectj {
    /*调用某个文件夹下面所有的class*/
    //    pointcut callF(): execution(* com.gaojian..*.*(..));
   
    /**
     * 1) before : 在目标函数执行前执行
     * 2) after :在目标函数执行后执行
     * 3) after returning : 在目标函数返回是执行
     * 4) after throwing : 在目标函数抛出异常时执行
     * 5) around : 在目标函数执行中执行
     */
    pointcut callF(int begin) : execution(!static * com.gaojian.aspectj.test1.Function.*(int, ..)) && args(begin,..);
   
//    before(int begin) : callF(begin) {
//        System.out.println("*****************before*****************");
//    }
   
//    after(int begin) : callF(begin) {
//        System.out.println("*****************after*****************");
//    }
   
//    after(int begin) returning(int result): callF(begin) {
//        System.out.println("****************after return******************");
//        // 返回结果的输出
//        System.out.println(result);
//    }
   
//    after(int begin) throwing(Exception e) : callF(begin) {
//        System.out.println("抛出异常的类型:" + e.getClass().getSimpleName());
//        System.out.println("抛出异常的内容: " + e.getMessage());
//        System.out.println(e.toString());
//        System.out.println(thisJoinPoint.getSourceLocation());
//      System.out.println(thisJoinPoint.getStaticPart());
//    }
   
//    Object around(int begin) : callF(begin) {
//        if(begin == 0) {
//            begin = 1;
//        }
//        Object result = proceed(begin);
//        return result;
//    }
}

 

Function中的代码

package com.gaojian.aspectj.test1;

public class Function {
    public void f(int begin, int end) {
        System.out.println("method execution!");
    }
   
    public int f1(int begin) {
        System.out.println("method execution");
        return begin;
    }
   
   
    public void f2(int begin) {
        System.out.println("method execution");
        if(begin == 0) {
            throw new RuntimeException("begin can not be '0'!");
        }
    }
   
    public static void main(String[] args){
        Function function = new Function();
        /* 没有返回结果的函数执行 */
//        function.f(0, 1);
        /* 有返回结果的函数执行 */
//        function.f1(0);
        /* 有异常抛出 */
//        function.f2(0);
        /* around的使用 */
        /**
         * 输出的结果应该为0,经过切面中环绕函数的处理,结果变为了1。
         */
//        System.out.println(function.f1(0));
    }
}

 

分享到:
评论

相关推荐

    贝塞尔函数-汉克尔积分变换

    ### 贝塞尔函数-汉克尔积分变换 #### 一、引言 在数学物理领域,特别是处理波动方程时,贝塞尔函数扮演着重要的角色。本文将深入探讨贝塞尔函数及其相关变换——汉克尔积分变换。贝塞尔函数在解决拉普拉斯方程在柱...

    AJ52鼠标宏

    AJ52鼠标宏

    AJ.zip_AJ浏览器

    标题"AJ.zip_AJ浏览器"指的是一个压缩包文件,其中包含了一个名为"AJ浏览器"的项目。这个项目是由用户自己创建的小型浏览器,并且附带了源代码,目的是供他人审阅并提供反馈。描述中提到,作者希望社区成员能够帮助...

    三菱AJ71AP21,AJ71AR21,AJ71AP22,AJ71AR22,AJ72P25,AJ72R25用户手册(英文).pdf

    三菱AJ71AP21,AJ71AR21,AJ71AP22,AJ71AR22,AJ72P25,AJ72R25用户手册(英文)pdf,三菱AJ71AP21,AJ71AR21,AJ71AP22,AJ71AR22,AJ72P25,AJ72R25用户手册(英文)

    行为验证码 AJ-Captcha 1.3.0

    行为验证码AJ-Captcha 1.3.0是一种用于网络安全验证的解决方案,旨在防止自动化脚本或机器人进行恶意操作。此版本提供了丰富的功能和多种平台的支持,包括前后端交互,以及前端框架如Vue.js、H5、Android、iOS、...

    一段AJ71UC24模块的通讯程式

    2. **建立通讯连接**:使用PLC的内置函数或指令来建立与AJ71UC24的连接。这可能涉及到设置通讯参数,如波特率、数据位、停止位和校验方式。 3. **数据传输**:编写读写指令,用于从模块读取数据或将数据写入模块。...

    AJ-Captcha行为验证码 v1.3.0.zip

    AJ-Captcha行为验证码是一款用于网站安全验证的工具,版本为1.3.0。这款验证码系统旨在防止自动化脚本或机器人进行恶意操作,如垃圾邮件发送、账户注册、恶意登录等。它通过检测用户在输入验证码时的行为模式来判断...

    java源码AJ-Report可视化报表工具

    AJ-Report是一款基于Java开发的开源可视化报表工具,它提供了丰富的图表类型和灵活的数据处理能力,使得开发者可以方便地创建和展示数据报表。这个压缩包包含了一份使用说明和AJ-Report的V1.4.0版本。 在Java编程中...

    AJ-Report可视化报表工具 v1.3.0.zip

    AJ-Report是一款强大的可视化报表工具,其v1.3.0版本主要专注于提供高效的数据分析和展示能力。这款工具能够帮助开发者和业务分析师快速构建出交互式的报表和仪表板,从而更好地理解数据背后的故事。在深入探讨AJ-...

    三菱PLC AJ65BT-64AD视频教程+程序 三菱Q远程设备站CC-LINK AJ65BT-64AD教程.zip

    《三菱PLC AJ65BT-64AD视频教程+程序 三菱Q远程设备站CC-LINK AJ65BT-64AD教程》 本文将深入探讨三菱PLC中的AJ65BT-64AD模块及其在CC-LINK通信网络中的应用。这个教程集合包含了从基础到进阶的全方位学习材料,包括...

    AJ-Report是一个完全开源,拖拽编辑的可视化设计工具。三步快速完成大屏:配置数据源---->写SQL配置.zip

    AJ-Report通常提供一个友好的SQL编辑器,支持编写复杂的查询语句,包括联接、子查询、聚合函数等。用户可以通过这个编辑器直接在界面上操作,减少与数据库交互的复杂性。对于不熟悉SQL的用户,AJ-Report可能还提供了...

    aj-report 报表设计器如何添加组件demo

    aj-report 报表设计器如何添加组件demo,这里只上传前端,后端代码请去gitee搜索aj-report 自行下载。 demo使用的版本是0.9.8.1

    MITSUBISHI三菱高速计数器模块类型AJ65BT-D62_AJ65BT-D62D_AJ65BT-D62D-S1用户手册

    MITSUBISHI的高速计数器模块,如AJ65BT-D62、AJ65BT-D62D以及AJ65BT-D62D-S1,是专为工业自动化应用设计的高效能部件,用于精确地监测和处理高速输入信号。这些模块提供了高精度的计数功能,适用于各种生产线监控和...

    掌讯方案YT9213AJ 最新刷机固件包

    xyauto_ui1_9213AJ-ota掌讯方案YT9213AJ 最新刷机固件包,下载后解压至U盘根目录下,然后插到车上的USB口,点击设置 系统信息里面点升级即可。提示升级成功后,拔掉U盘重新启动系统即可进入最新版系统了。如果出现...

    基于三角插值法的连杆机构传动函数的近似展开

    通过计算系数a0, aj 和 bj(根据狄利克雷条件),可以将复杂的传动函数近似为傅里叶级数的有限项和,从而简化原函数。 此外,文章还引入了等间距结点的概念,即在机构的运动范围内选取等间距的点,这些点作为插值...

    基于Javascript的行为验证码AJ-Captcha设计源码

    本源码提供了一个基于Javascript的行为验证码AJ-Captcha设计。项目包含1645个文件,其中包括343个PNG图片、241个PHP文件、139个Swift文件、93个JavaScript文件、88个H文件、80个M文件、72个XML文件、69个Java文件、...

    集成aj-captcha实现滑块验证码.zip

    本集成教程将详细介绍如何在项目中使用aj-captcha库来实现滑块验证码功能,特别适用于基于若依前后端分离架构的应用。 首先,aj-captcha是一个专门用于生成滑块验证码的JavaScript库,它提供了一种动态、直观的方式...

    xyauto_ui1_9213AJ-ota-20200806.zip

    标题“xyauto_ui1_9213AJ-ota-20200806.zip”揭示了这是一个针对掌迅YT9213AJ设备的软件更新包,该更新通常被称为OTA(Over-the-Air)升级包。"ota"在IT领域中通常指的是设备通过无线网络接收的固件或软件更新。而...

    个人版AJ云.rar

    本文将详细探讨如何使用Auto.js实现与云端的数据交互,以“个人版AJ云.js”为例,深入解析这一功能的应用和实现方式。 Auto.js是一款基于Android平台的JavaScript编程工具,它允许用户编写脚本来控制手机或模拟触控...

    AJ-D955说明书

    《AJ-D955说明书解析:专业视频设备的深度指南》 在当今的高清视频制作领域,AJ-D955作为一款高性能的数字录像机,以其卓越的技术性能和丰富的功能特性,成为众多专业摄影师和视频制作团队的首选。本文旨在通过对AJ...

Global site tag (gtag.js) - Google Analytics