- 浏览: 574108 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (174)
- JBPM (3)
- WWF (0)
- JavaScript (11)
- J2EE (40)
- OperationSystem (11)
- 数据库 (12)
- CSS (1)
- Ajax (2)
- J2SE (30)
- Tools (10)
- 服务器中间件 (3)
- 异常 (0)
- Flex (5)
- jQuery (11)
- html (9)
- Ejb (1)
- HTML5 Shiv–让该死的IE系列支持HTML5吧 (1)
- Spring (9)
- Quartz (3)
- log4j (1)
- maven (1)
- cpdetector (1)
- JSON (1)
- log4jdbc (1)
- asm (8)
- FusionCharts (1)
- jqplot (1)
- highcharts (1)
- excanvas (1)
- html5 (1)
- jpcap介绍 (1)
- weblogic (3)
- URLURLClassLoader (0)
- URLClassLoader (1)
- ant (2)
- ivy (2)
- nexus (1)
- IT (0)
- LoadRunner (1)
- SCSS (1)
- ruby (1)
- webstorm (1)
- typescript (1)
- Jboss7 (1)
- wildfly (1)
- oracle (5)
- esb (0)
- dubbo (2)
- zookeeper (3)
- eclipse (1)
- Android (2)
- Studio (1)
- Google (1)
- 微信 (1)
- 企业号 (1)
- Linux (13)
- Oracle12c (1)
- Hadoop (1)
- InletexEMC (1)
- Windows (1)
- Netty (3)
- Marshalling (2)
- Protobuf (1)
- gcc (1)
- Git (1)
- GitLab (1)
- shell (2)
- java (3)
- Spring4 (1)
- hibernate4 (1)
- postgresql (1)
- ApacheServer (2)
- Tomcat (2)
- ApacheHttpServer (2)
- realvnc (1)
- redhat (7)
- vncviewer (1)
- LVS (4)
- LVS-DR (1)
- RedHat6.5 (5)
- LVS-NAT (1)
- LVS-IPTUNNEL (2)
- LVS-TUN (1)
- keepalived (2)
- yum (1)
- iso (1)
- VMware (1)
- redhat5 (1)
- ha (1)
- nginx (2)
- proguard (1)
- Mat (1)
- DTFJ (1)
- axis2 (1)
- web service (1)
- centos (1)
- random (1)
- urandom (1)
- apache (1)
- IBM (1)
- cve (1)
- 漏洞 (1)
- JDBC (1)
- DataSource (1)
- jdk (1)
- tuxedo (2)
- wtc (1)
最新评论
-
skying007:
好资料,谢谢分享给啊
FusionCharts在服务器端导出图片(J2EE版) -
cgnnzg:
大神好 可以发一份源码给我学习么 多谢了 978241085 ...
springmvc+dubbo+zookeeper -
jifengjianhao:
求源码:854606899@qq.com
springmvc+dubbo+zookeeper -
wdloyeu:
shihuan8@163.com邮箱网盘在哪,没找到。能给份源 ...
Java Socket长连接示例代码 -
huangshangyuanji:
求代码:45613032@qq.com
springmvc+dubbo+zookeeper
MyPersonService.java代码如下:
MyPersonServiceImpl.java代码如下:
SecurityHandler.java代码如下:
TestMyAop.java代码如下:
package com.shihuan.jdkaop.service; public interface MyPersonService { public void findPerson(String name); }
MyPersonServiceImpl.java代码如下:
package com.shihuan.jdkaop.service.impl; import com.shihuan.jdkaop.service.MyPersonService; public class MyPersonServiceImpl implements MyPersonService { public String myproperty = "shihuan..."; @Override public void findPerson(String name) { System.out.println("在com.shihuan.jdkaop.service.impl.MyPersonServiceImpl.findPerson()中: " + name); } }
SecurityHandler.java代码如下:
package com.shihuan.jdkaop.handler; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Proxy; import com.shihuan.jdkaop.service.MyPersonService; import com.shihuan.jdkaop.service.impl.MyPersonServiceImpl; public class SecurityHandler implements InvocationHandler { private Object targetObject; public Object createProxyInstance(Object targetObject){ this.targetObject = targetObject; //创建一个代理对象,此对象是一个与目标对象实现了相同接口的对象,第一个参数为目标对象的类加载器,第二个参数为目标对象所实现的所有接口,第三个参数为实现了InvocationHandler接口的对象实例,这里是SecurityHandler本身 return Proxy.newProxyInstance(this.targetObject.getClass().getClassLoader(), this.targetObject.getClass().getInterfaces(), this); } /** * InvocationHandler接口的方法 * @param proxy 代理对象 * @param method 被拦截到的方法 * @param args 被拦截到的方法的输入参数 * @return 代理对象最后又将拦截到的方法处理委派回给目标对象自己处理 */ @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { MyPersonServiceImpl bean = (MyPersonServiceImpl) this.targetObject; Object result = null; System.out.println("before advice()"); result = method.invoke(bean, args); System.out.println("after advice()"); System.out.println("参数个数: " + args.length); for (int i = 0; i < args.length; i++) { System.out.println("每一个具体的参数值: " + args[i]); } System.out.println(bean.myproperty); return result; } }
TestMyAop.java代码如下:
package com.shihuan.jdkaop.test; import com.shihuan.jdkaop.handler.SecurityHandler; import com.shihuan.jdkaop.service.MyPersonService; import com.shihuan.jdkaop.service.impl.MyPersonServiceImpl; public class TestMyAop { /** * @param args */ public static void main(String[] args) { SecurityHandler myhandler = new SecurityHandler(); MyPersonService mybz = (MyPersonService) myhandler.createProxyInstance(new MyPersonServiceImpl()); mybz.findPerson("yushibo"); } }
- java实现aop案例.rar (3 KB)
- 下载次数: 4
发表评论
-
JDK中的随机数机制探究
2017-05-31 21:25 1912今天有同事问起关于JDK1.8中默认是random问题 ... -
Netty5 AIO
2015-11-25 21:18 1657工程结构图: TimeServer.java文件内容如下: ... -
JDK1.7 AIO
2015-11-24 22:32 1021工程结构图: Helper.java文件内容如下: p ... -
java JAVA_OPTS javaagent
2015-11-23 15:48 1476附件里java JAVA_OPTS -javaagent的程序 ... -
dubbo源代码调试
2015-09-24 17:06 4167今天同事要调试zookeeper+dubbo源代码,所以做了以 ... -
any+ivy的使用
2014-11-29 16:25 2056javapro-用ivy编译版本.rar文件时示例代码。 i ... -
URLClassLoader初体验
2014-11-26 14:56 2147使用概要: File file = ... -
将输出流OutputStream转化为输入流InputStream的方法
2014-07-19 22:27 27624将输出流OutputStream转化为输入流InputSt ... -
JVM启动参数大全
2014-06-11 17:19 964http://www.blogjava.net/midstr/ ... -
Java Socket长连接示例代码
2014-04-07 13:42 21720SocketListenerPusher.java代码如下: ... -
Java多线程文档
2013-10-06 10:56 1178附件里是Java多线程的pdf文档,写的比较好,可参考。 ... -
利用jackson包进行json字符串与pojo类之间的转换源代码
2012-10-05 19:35 1923附件里是利用jackson包进行json字符串与pojo类之间 ... -
Java Swing开发的文件内容加密
2012-09-02 14:52 1192主要是javax.swing.JFrame和java.awt. ... -
mysql和Oracle在对clob和blob字段的处理
2012-08-25 18:50 30846一、MySQL与Oracle数据库如何处理Clob,Bl ... -
用JAVA Bean 反射得到set,get方法
2011-10-17 19:39 9034/** * java反射bean的get方法 ... -
Oracle自带连接池应用
2011-08-31 13:27 2032依赖ojdbc14.jar包 OraclePooled.ja ... -
利用commons-digester3-30.jar解析xml文件
2011-08-28 14:05 3943此方式解析需要commons-beanutils-1.8.3. ... -
非阻塞的HTTP服务器
2011-08-27 21:23 1311附件里为非阻塞HTTP服务器的相关Java代码。 HttpS ... -
Java.nio
2011-08-27 21:17 1361附件里为阻塞模式、非阻塞模式、阻塞和非阻塞的混合模式代码。 ... -
Java中数字转大写货币(支持到千亿)
2011-08-17 20:20 2784public class MoneyToOther { / ...
相关推荐
Spring的AOP开发(XML)Spring的AOP的注解开发 代码案例
针对Java Spring 框架的核心技术场景案例,AOP和事务处理部分的应用案例,涉及业务层接口万次执行效率,百度网盘密码数据兼容处理和转账业务追加日志三个案例
java xml方式实现springaop编程,包含源码+jar包+解释
博客《理解Spring AOP实现与思想》案例代码,对Java技术感兴趣的朋友可以关注一下我,我在csdn为您准备了很多Java干货。
该源码是课程 Java Spring案例精讲 ---- Spring框架 的源码,包含Java Spring的最简单的Hello World、IOC、AOP及Log的源码 Spring整体框架中的核心功能,例如:IOC、AOP、Bean生命周期、上下文、作用域、资源处理等...
在本篇文章里我们给大家整理了关于java AOP原理以及相关知识点总结,正在学习的朋友们参考下。
SpringBoot AOP各种注解、自定义注解、鉴权使用案例SpringBoot AOP各种注解、自定义注解、鉴权使用案例SpringBoot AOP各种注解、自定义注解、鉴权使用案例
2.3 AOP 入门案例 2.3.1 创建一个SpringBoot的module 2.3.1 导入jar包 2.3.2 项目工程结构 2.3.3 配置类 2.3.4 Service层 2.3.4.1 接口 2.3.4.2 实现类 2.3.5 切入点表达式 2.3.6 定义切面类 2.3.7 让AOP生效 2.3.8 ...
spring AOP实例 以及junit4做spring项目的测试实例
spring-aop面向切面系统日志案例
Spring AOP:以loC为基础讲解Spring下的AOP开发,讲解了3种AOP的开发方式,即使用@Aspect注释符、基于Schema的配置的开发方式和Spring API的开发方式,最后在实际的Java EE项目中实现5种Spring AOP功能(日志记录器...
本书内容循序渐进,通俗易懂,覆盖了AOP开发的最流行框架技术与应用案例。无论是对于Java EE架构设计还是软件开发,本书都是精通开发Java Web应用的必备的实用手册。 本书的读者对象:Java和Java EE的软件架构师与...
本项目是提供给java新手...本项目演示了java的 AOP 面向切面 的开发。 本项目演示了 前置切面,环绕切面, 后置异常切面 的开发。 本项目的技术栈是 Maven+Spring 如果您是技术高手,请不要购买,这个资源不适合您。
完整版Java web开发教程PPT课件 Java开发进阶教程 第11章 AJAX实现(共11页).pptx 完整版Java web开发教程PPT课件 Java开发进阶教程 第12章 自定义mvc框架(共11页).pptx 完整版Java web开发教程PPT课件 Java开发...
虽然Spring AOP的切点表达式尚未 全部实现 @AspectJ 的切点指示符,但是也已经足够多和灵活,本文主要介绍@Pointcut切点表达式中的@within、within这两种切点指示符,结合案例,十分钟让你彻底搞懂! 文末已附源码,...
本书内容循序渐进,通俗易懂,覆盖了AOP开发的最流行框架技术与应用案例。无论是对于Java EE架构设计还是软件开发,本书都是精通开发Java Web应用的必备的实用手册。 本书的读者对象:Java和Java EE的软件架构师与...
面试必考之HashMap源码分析与实现 探索JVM底层奥秘ClassLoader源码分析与案例讲解 面试必备技能之Dubbo企业实战 分布式框架Zookeeper之服务注册与订阅 互联网系统垂直架构之Session解决方案 分库分表之后分布式下...
一般来说,读写分离有两种实现方式。第一种是依靠中间件MyCat,也就是说应用程序连接到中间件,中间件帮我们做SQL分离,去选择指定的数据源;第二种是应用程序自己去做分离。这里我用程序自己来做,主要是利用Spring...