Java 面向切面编程AOP
一:背景Spring的AOP的存在目的是为了解耦。AOP可以让一组类共享相同的行为。在OOP中只能通过继承类和实现接口,来是代码的耦合度增强,且类继承只能为单继承,阻碍更多行为添加到一组类上,AOP弥补了OPP的不足。二:概述 Spring支持AspectJ的注解方式切面编程1.使用@Aspect 声明一个切面。2.使用@After,@Befo...
Java interceptor 拦截器
一:拦截器的应用场景1、日志记录:记录请求信息的日志,以便进行信息监控、信息统计、计算PV(Page VIEW)等。2、权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直接返回到登录页面;3、性能监控:有时候系统在某段时间莫名其妙的慢,可以通过拦截器在进入处理器之前记录开始时间,在处理完后记录结束时...
Java Annotation 注解
一:背景JDK 5中引入了源代码中的注解(annotation)这一机制。注解使得Java源代码中不但可以包含功能性的实现代码,还可以添加元数据。注解的功能类似于代码中的注释,所不同的是注解不是提供代码功能的说明,而是实现程序功能的重要组成部分。Java注解已经在很多框架中得到了广泛的使用,用来简化程序中的配置。Java...
Java Proxy动态代理
一:背景Spring主要有两大思想,一个是IoC,另一个就是AOP.而AOP的原理就是java的动态代理机制.二:概念动态代理其实就是java.lang.reflect.Proxy类动态的根据您指定的所有接口生成一个class BYTE,该class会继承Proxy类,并实现所有你指定的接口(您在参数中传入的接口数组);然后再利用您指定的classloader将 clas...
Java Filter过滤器
一:过滤器简介Filter也称之为过滤器,它是Servlet技术中最实用的技术,Web开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能。它主要用于对用户请...
JAVA接口回调
一:回调的用途在android中回调机制被大量的使用。比如,在Activity中定义了很多生命周期的不同状态要调用的方法,这些方法都是空实现,系统框架要调用,用户也要调用来实现。OnClickListener就是android系统所约好的接口,然后在我们写的应用程序中传入回调对象,这样就可以达到接口统一,实现不同的效果。...
J2EE框架资料整理
网上摘取的有关JDBC/Spring Jdbc/MyBatis性能比较,Java MVC框架性能比较及J2EE项目的通用目录结构
Java基础--jvm内存结构
内存的动态分配和垃圾回收技术对于Java与C++技术人员来说,就像一座围城,内部的人想出来,外部的人想进去。对于Java程序员来说,JVM的自动内存管理机制为他们解决了很多的问题和繁琐的工作。但一旦出现...
Java基础--Java 内部类
嵌套类是定义在另一个类的内部的类。嵌套类存在的目的应该只是为它的外部类提供服务。如果嵌套类可能会用于其它的某个场景中,它就应该是顶层类。嵌套类有四种:静态成员类,非静态成员...
Java基础--HashMap IdentityHashMap与WeakHashMap
Map通过<key,value>的方式来存储数据,key不允许相同。 HashMap通过equal来比较key的值是否相同,而IdentityHashMap通过==来比较key的引用地址是否相同。所以:Map<String, String> hashMap=new HashMap<String,...
Java基础--FileDescriptor sync方法
在读Lucene的源码过程中,发现FSDirectory类中有一个文件信息同步的方法,对其中的一行代码file.getFD().sync();不是很清楚(这也可见自己的基础有多么的差)。经过一番检索,终于明白了其大意。 protect...