Spring-AOP @AspectJ切点函数之target()和this()

概述 实例 target this概述target()切点函数通过判断目标类是否按类型匹配指定类来决定连接点是否匹配. 用于匹配当前目标对象类型的执行方法;注意是目标对象的类型匹配,这样就不包括引入接口也类型匹配;this()切点函数则通过判断代理类是否按类型匹配指定类来决定是否和切点匹配。 用于匹配当前AOP代理对象类型的执行方法;注意是AOP代理对象的类型匹配,这样就可能包括引入接口也类型...
阅读(1262) 评论(0)

Java-Java中的线程池原理分析及使用

概述 线程池的优点 线程池的实现原理 线程池的使用 创建线程池 向线程池中提交任务 关闭线程池 合理的配置线程池 线程池的监控概述我们在上篇博文 Java-多线程框架Executor解读 可以看到 Executors 工厂方法中的几个静态工厂方法中的内部实现都是 ThreadPoolExecutor。 比如: JDK中的线程池均由ThreadPoolExecutor类实现。ThreadPoolE...
阅读(706) 评论(0)

Spring-AOP @AspectJ切点函数之@within()和@target

概述 targetM的匹配规则 withinM的匹配规则 实例 target within 注意事项概述除了@annotation和@args外,还有另外两个用于注解的切点函数,分别是@target和@within. 和@annotation @args函数一样,@target和@within也只接受注解类名作为入参。 其中@target(M)匹配任意标注了@M的目标类,而@within(M)匹配标...
阅读(1156) 评论(0)

Spring-AOP @AspectJ切点函数之within()

概述 语法 实例 withincomxgjNaiveWaiter withincomxgj withincomxgj概述通过类匹配模式串声明切点,within()函数定义的连接点是针对目标类而言的,而非针对运行期对象的类型而言,这一点和execution()是相同的。 但是within()和execution()函数不同的是,within()所指定的连接点最小范围只能是类,而execution()所...
阅读(1268) 评论(0)

Java-多线程框架Executor解读

概述 Executor框架简介 Executor框架的两级调度模型 Executor框架成员 任务 执行任务 异步计算的结果 Executor框架的类与接口 使用Executor框架概述在Java中,使用线程来异步执行任务。Java线程的创建与销毁需要一定的开销,如果我们为每一个任务创建一个新线程来执行,这些线程的创建与销毁将消耗大量的计算资源。同时,为每一个任务创建一个新线程来执行,这种策略可能会...
阅读(470) 评论(0)

Java-Java5.0泛型解读

概述 泛型类 泛型方法 边界符 通配符 PECS原则 类型擦除概述Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。泛型类我们先看一个简单的类的定义package com.xgj.master.java.generics;public c...
阅读(852) 评论(0)

Spring-AOP @AspectJ切点函数之args()和@args()

概述 args args 实例 args args概述args函数的入参是类名, 而 @args()的入参必须是注解类的类名。 虽然args()允许在类名后使用“+”通配符,但该通配符在此处没有意义,添加和不添加的效果都一样。args()该函数接收一个类名,表示目标类方法入参对象是指定类(包含子类)时,切点匹配。比如args(com.xgj.Waiter) 表示运行时入参是Waiter类型的方法,它...
阅读(1255) 评论(0)

Java-工具类之发送邮件

步骤 实例 依赖包 不带有附件的邮件 工具类一 工具类二 带有附件的邮件步骤 使用properties创建一个Session对象 使用Session创建Message对象,然后设置邮件主题和正文,如果需要发送附件,就需要用到Multipart对象 使用Transport对象发送邮件 实例代码已托管到 https://github.com/yangshangwei/commonUtils依赖包...
阅读(1497) 评论(2)

Spring-AOP @AspectJ切点函数之execution()

概述 通过execution定义切点的不同方式 通过方法签名定义切点 通过类定义切点 通过类包定义切点 通过方法入参定义切点 实例 通过方法签名定义切点概述execution()是最常用的切点函数,语法如下execution(?()?)其中:返回类型模式、方法名模式、参数模式是必选项。 通过execution()定义切点的不同方式下...
阅读(1201) 评论(0)

Spring-AOP @AspectJ切点函数之@annotation()

annotation概述 实例@annotation()概述代码已托管到Github—> https://github.com/yangshangwei/SpringMaster @annotation表示标注了某个注解的所有方法。 下面通过一个实例说明@annotation()的用法。 AnnotationTestAspect定义了一个后置切面增强,该增强将应用到标注了NeedTest的目标方法...
阅读(1348) 评论(0)

Spring-AOP @AspectJ切点函数导读

概述 annotation execution args和args within within和target target和this概述切点函数是AspectJ表达式语言的核心,也是使用@AspectJ进行切面定义的难点,本篇博文将为你揭开@AspectJ切点函数的神秘面纱@annotation()因篇幅原因,请查看另外一篇博文:Spring-AOP @AspectJ切点函数之@annotation...
阅读(1248) 评论(0)

Spring-AOP @AspectJ语法基础

概述 切点表达式函数 方法切点函数 execution annotation 方法入参切点函数 args args 目标类切点函数 within target within target 代理类切点函数 this 注意事项 在函数入参中使用通配符支持通配符的函数说明 逻辑运算符不同增强类型 Before AfterReturning Around AfterThrowing After Declar...
阅读(1256) 评论(0)

Spring-AOP 自动创建代理之AnnotationAwareAspectJAutoProxyCreator

导读 实例导读Spring-AOP 自动创建代理Spring-AOP 自动创建代理之BeanNameAutoProxyCreatorSpring-AOP 自动创建代理之DefaultAdvisorAutoProxyCreatorSpring-AOP 自动创建代理之AnnotationAwareAspectJAutoProxyCreator实例代码已托管到Github—> https://github...
阅读(1314) 评论(0)

Spring-AOP 使用@AspectJ

概述 准备工作 实例 通过编码的方式使用AspectJ切面 通过配置的方式使用AspectJ切面 自动生成代理的方式 基于Schema的aop命名空间配置的方式概述我们之前一个系列的文章,分别使用Pointcut和Advice接口描述切点和增强,并用Advisor整合二者描述切面,@AspectJ则采用注解来描述切点、增强,二者只是表述方式不同,描述内容的本质是完全相同的。 准备工作 在使用@Asp...
阅读(1380) 评论(0)

Java-Java5.0注解解读

概述 元注解Meta-annotation Target Retention Documented Inherited 自定义注解 定义注解格式 注解参数的可支持数据类型 实例 编写注解类 使用注解 访问注解概述Java5.0注解可以看做Javadoc和Xdoclet标签的延伸和发展,在Java5.0中可以自定义这些标签,并通过Java语言的反射机制获取类中标注的注解,完成特定的功能。 注解是代码的...
阅读(1361) 评论(0)

Spring-AOP 自动创建代理之DefaultAdvisorAutoProxyCreator

导读 概述 实例导读Spring-AOP 自动创建代理Spring-AOP 自动创建代理之BeanNameAutoProxyCreatorSpring-AOP 自动创建代理之DefaultAdvisorAutoProxyCreator概述我们知道切面Advisor是切点和增强的复合体,Advisor本身已经包含了足够的信息,如横切逻辑及连接点。DefaultAdvisorAutoProxyCreat...
阅读(1587) 评论(0)

Spring-AOP 自动创建代理之BeanNameAutoProxyCreator

导读 实例导读Spring-AOP 自动创建代理实例代码已托管到Github—> https://github.com/yangshangwei/SpringMaster在 Spring-AOP 静态普通方法名匹配切面 案例中,我们通过配置两个ProxyFactoryBean分别为waiter和seller的Bean创建代理对象,如下<?xml version="1.0" encoding="UTF...
阅读(1546) 评论(0)

Spring-AOP 自动创建代理

导读 概述 实现类介绍 BeanNameAutoProxyCreator DefaultAdvisorAutoProxyCreator AnnotationAwareAspectJAutoProxyCreator AOP总结导读Spring-AOP 自动创建代理Spring-AOP 自动创建代理之BeanNameAutoProxyCreatorSpring-AOP 自动创建代理之DefaultAdv...
阅读(1406) 评论(0)

Spring-AOP 引介切面

概述 引介切面类继承关系 IntroductionAdvisor接口的两个实现类 DefaultIntroductionAdvisor的构造函数 实例概述之前的博文介绍了 Spring-AOP 通过配置文件实现 引介增强 ,引介切面是引介增强的封装器,通过引介切面可以很容易的为现有对象添加任何接口的实现。 引介切面类继承关系IntroductionAdvisor 和 PointcutAdviso...
阅读(1440) 评论(0)

Spring-AOP 复合切点切面

概述 ComposablePointcut源码 ComposablePointcut的构造函数 ComposablePointcut的3个交集运算的方法 ComposablePointcut的3个并集运算的方法 多个切点之间的交集并集运算 实例概述通过上面几篇文章我们发现,实例中的定义的切面仅有一个切点,有的时候,一个切点可能难以描述目标连接点的信息。上篇博文 Spring-AOP 流程切面的例子,...
阅读(1354) 评论(0)
437条 共22页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:874065次
    • 积分:14296
    • 等级:
    • 排名:第895名
    • 原创:404篇
    • 转载:0篇
    • 译文:5篇
    • 评论:142条
    WeChat
      欢迎关注我的公众号,干货只有干货,还有更多惊喜和资源在等着你
    博客专栏