装饰器 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志、性能测试、事务处理等。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用。概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能。 先定义一个基本的装饰 ...
分类:
其他好文 时间:
2018-01-28 14:45:50
阅读次数:
189
本节内容: AOP介绍 Spring底层AOP的实现原理 Spring的AOP名词 Spring中的AOP开发 一、AOP介绍 1. 什么是AOP 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护 ...
分类:
编程语言 时间:
2018-01-28 11:28:00
阅读次数:
238
retrofit是一个解耦性非常高的网络请求框架,最近在研究的时候发现了动态代理这个非常强大且实用的技术,这篇文章将作为retrofit的前置知识,让大家认识:动态代理有哪些应用场景,什么是动态代理,怎样使用,它的局限性在什么地方?#动态代理的应用场景####1.AOP—面向切面编程,程序解耦简言之当你想要对一些类的内部的一些方法,在执行前和执行后做一些共同的的操作,而在方法中执行个性化操作的时候
分类:
编程语言 时间:
2018-01-26 10:56:34
阅读次数:
179
现象描述 当我们打开京东 app 进入首页,如果当前是没有网络的状态,里面的按钮点击是没有反应的。只有当我们打开网络的情况下,点击按钮才能跳转页面,按照我们一般人写代码的逻辑应该是这个样子: 上面这段代码看似没有任何问题,完全满足京东的网络处理需求,就写一个 if(有网) 跳转到下一个页面,没网就不 ...
分类:
其他好文 时间:
2018-01-25 15:44:06
阅读次数:
180
1、静态代理 (1)实现方式 代理类和被代理类实现同一接口,代理类方法调用被代理类对应方法。 ClassA.methodA() >ClassB.methodA() (2)应用场景 被代理的类少,或切面代码与被代理的类与很强的相关性。 2、动态代理 (1)实现方式 动态代理由三部分组成:动态生成的代理 ...
分类:
其他好文 时间:
2018-01-25 00:23:57
阅读次数:
127
主要作用:解决代码复用,避免重复性编写代码。 比较典型的场景:日志打印,权限验证,事务处理 参考网址为:http://moon-walker.iteye.com/blog/2381532 spring aop相关术语 切面:用于承载 通知+切点的类。把where,when and how(在哪执行, ...
分类:
编程语言 时间:
2018-01-24 16:50:42
阅读次数:
138
Srping概念 1.Spring是开源的轻量级框架 2.Srping核心两部分: (1)aop:面向切面编程,扩展功能不是修改源代码实现 (2)ioc:控制反转 -比如有一个类,在类里面有方法(不是静态方法),调用类里面的方法,创建类的对象调用方法,创建类对象的过程,需要new出来对象 -把对象的 ...
分类:
编程语言 时间:
2018-01-24 13:54:23
阅读次数:
146
Spring框架 Spring框架是Java应用最广的框架。它的成功来源于理念,而不是技术本身,它的理念包括IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)。 参考资料 《Java EE互联网轻量级框架整合开 ...
分类:
编程语言 时间:
2018-01-23 14:21:54
阅读次数:
143
基本概念 操作系统中 heap 和 stack 的区别 什么是基于注解的切面实现 什么是 对象/关系 映射集成模块 什么是 Java 的反射机制 什么是 ACID BS与CS的联系与区别 Cookie 和 Session的区别 fail-fast 与 fail-safe 机制有什么区别 get 和 ...
分类:
编程语言 时间:
2018-01-23 11:03:07
阅读次数:
307
1、过滤器 servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序, 主要的用途是过滤字符编码、做一些业务逻辑判断等。其工作原理是,只要 在web.xml文件配置好要连接的客户端请求,此时就可以对请求或响应统一设置 编码,简化操作;同事还可进行逻辑判断 ...
分类:
其他好文 时间:
2018-01-22 21:16:50
阅读次数:
135