• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • YouClaw
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
斑駁_光影
                              Keep Hunger     Keep Foolish
博客园    首页    新随笔    联系   管理    订阅  订阅
07 2012 档案
spring AoP学习 -----AoP织入器ProxyFactory剖析

摘要:spring AOP框架内使用AopFactory对使用的不同的代理实现机制进行适度的抽象, 只对不同的代理实现机制提供相应的实现,spring Aop框架内提供了JDK的动态代理和Cglib的两种机制的AopProxy实现,即JdkDynamicAopProxy和CglibAopProxy。 阅读全文
posted @ 2012-07-25 13:27 斑驳_光影 阅读(520) 评论(0) 推荐(0)
spring AoP学习 -----spring设计模式之代理模式

摘要:代理模式:对其他对象提供一种代理以控制对这个对象的访问。代理模式的主要作用是为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式的思想是为了提供额外的处理或者不同的操作而在实际对象与调用者之间插入一个代理对象。 代理模式中一般涉及4中角色: InterfaceSubject :该接口是对被访问者或者被访问资源的抽象。 SubjectImpl:被访问者或者被访问资源的具体实现类,实现了InterfaceSubject SubjectProxy:被访问者或... 阅读全文
posted @ 2012-07-25 13:15 斑驳_光影 阅读(5404) 评论(1) 推荐(0)
spring AoP学习 -----AoP织入器

摘要:在spring AoP中,使用类aop.framework.ProxyFactory作为织入器,使用ProxyFactory作为织入器,使用ProxyFactory来进行横切逻辑的织入很简单,spring AoP是基于代理模式的AoP实现,织入过程实现完成后,会返回织入了横切逻辑的目标对象的代理对象,ProxyFactory就会返回那个织入完成的代理对象。 使用ProxyFactory只需要指定如下两个最基本的东西:1.指定要对其进行织入的对象。2.指定要应用到目标对象的Aspect ProxyFactory代理类型: 1.基于接口的代理eg:public class Weave... 阅读全文
posted @ 2012-07-25 13:15 斑驳_光影 阅读(1374) 评论(0) 推荐(0)
spring AoP学习 -----AoP的相关概念实体 Advice / Aspect

摘要:spring中的Advice按照其自身实例(instance)能否自目标对象类的所有实例中共享这一标准,可以划分成为两大类: 1.pre-class:该类型的Advice的实例可以再目标对象类的说有实例之间共享,这些Advice不会保存类状态和信息,这类Advice有: 1.before Advice: 只需要实现 aop.MethodBeforeAdvice接口。 2.ThrowsAdvice:以接口定义aop.ThrowsAdvice对应通常Aop概念中的After Throwing Advice 3.After Returning ... 阅读全文
posted @ 2012-07-24 17:58 斑驳_光影 阅读(3588) 评论(0) 推荐(0)
spring AoP学习 -----AoP的相关概念实体Joinpoint / pointcut

摘要:Joinpoint:在SpringAoP中,只支持Method Execution (方法执行)的Joinpoint,对于类型中的属性,我们可以通过对setter,getter方法的拦截从而达到相同的效果。 Pointcut: spring AoP以接口定义 aop.PointCut作为其AoP框架中说有 PointCut的最顶层抽象,该接口提供了两个方法用来帮助捕捉JoinPoint,并提供了一个TruePointcut类型实例。PointCut提供了三个方法:public interface Pointcut { /** * Return the ClassFilter... 阅读全文
posted @ 2012-07-24 17:01 斑驳_光影 阅读(7034) 评论(0) 推荐(0)
spring AoP学习 -----spring AoP 的实现机制

摘要:spring AoP属于第二代AoP,采用动态代理机制和字节码生成技术实现,在运行期间为目标对象生成一个代理对象,而将横切逻辑织入到这个代理对象中,系统最终使用的是织入了的横切逻辑的代理对象。通过代理模式(在另外一篇文章中讲述)通过动态字节码生成:实现原理:对目标对象进行集成扩展,为其生成相应的子类,而子类可以通过覆写来扩展父类的行为,只要将横切逻辑的实现放到子类中,然后让系统使用扩展后的目标对象的子类,就可以达到与代理模式相同的效果了。下面是一个简单的实例:public class CglibRequestCtrlCallback implements MethodIntercept... 阅读全文
posted @ 2012-07-24 11:33 斑驳_光影 阅读(714) 评论(0) 推荐(0)
spring AoP学习 -----AoP的基本概念

摘要:Aop的发展经理过两个阶段,第一个是静态Aop阶段,第二个是动态Aop阶段。 静态Aop阶段:作为第一代的Aop,以最初的AspectJ为代表,特点是以相应的横切关注点以Aspect形式实现之后,会通过特定的编译器,将实现后的Aspect编译并织入到系统的静态类中,优点是Aspect直接以java字节码的形式编译到java类中,java虚拟机可以像通常一样加载java类运行,不会给系统运行造成任何性能损失。 动态Aop阶段:作为第二代的Aop,大都通过java语言提供的各种动态特性来实现第一代Aop织入到当前系统的过程,这类产品有:JBoss AOP,Spring AOP,... 阅读全文
posted @ 2012-07-23 12:51 斑驳_光影 阅读(2247) 评论(0) 推荐(0)
实习阶段总结

摘要:来到公司三个星期了,在这边接触到了很多新技术、新观点。由于以前在学校的实验室也参与过一些项目的开发,对比了一下,发现还是有很多不同之处的。对应用程序的性能要求高:这是我来到这边最大的感受,由于要面对众多用户的高并发要求,因此企业的应用程序首要要求就是性能良好。个人觉得提高程序性能可以从几个方面入手:改良算法、使用缓存还有就是更换硬件设备。前面两个方面是开发人员能够去实现的,比如说我们这个实习的第一个任务就是为一个应用程序加上redis缓存,这个是以前没有接触过的东西,通过了解和使用,知道了他是一种Nosql的键值数据库,同类型产品中有memcache,与memcahce相比,它能够在停... 阅读全文
posted @ 2012-07-19 14:45 斑驳_光影 阅读(243) 评论(0) 推荐(0)
spring IoC学习 ------IoC容器:ApplicationContext容器内部事件发布

摘要:javaSE的自定事件发布:说有的自定义事件类型可以通过拓展EventObject来实现,而事件的监听器则拓展自EventListener。 eg:自定义事件类继承EventObject的MethodExecutionEventpublic class MethodExecutionEvent extends EventObject{ private String methodName; /** * */ private static final long serialVersionUID = 1L; public MethodExecu... 阅读全文
posted @ 2012-07-18 18:41 斑驳_光影 阅读(1891) 评论(0) 推荐(0)
spring IoC学习 ------IoC容器:ApplicationContext

摘要:ApplicationContext作为比BeanFactory更加先进的IoC容器的实现,除了对支持BeanFactory原有的功能之外,还扩展了包括BeanFactoryPostProcessor,BeanPostProcessor以及其他特殊类型bean的自动识别,容器启动后bean实例的自动初始化,国际化的信息支持,容器内事件发布等。 ApplicationContext类型容器提供的集中实现:FileSystemXmlApplicationContext:从文件中加载bean定义以及相关资源的ApplicationContext实现。ClassPathXmlApplicato... 阅读全文
posted @ 2012-07-18 18:41 斑驳_光影 阅读(592) 评论(0) 推荐(0)
spring IoC学习 ------IoC容器:BeanFactory

摘要:IoC容器: IoC容器会以某种方式加载Configuration metadata(通常是xml格式的配置信息),然后根据这些信息绑定整个系统的对象,最后总组装成一个可用的机遇轻量级容器的应用系统。 IoC启动过程:分为两个阶段,一个是容器启动阶段,另外一个是Bean实例化阶段 容器启动阶段:加载配置 -----》 分析配置信息 -----》装备到BeanDefinition -----》其他后处理(PostProcessor) Bean实例化阶段:实例化阶段 -----》装配阶段 -----》 生命周期回调 ------》 对象其他处理 -----》 注册回调接口容器... 阅读全文
posted @ 2012-07-18 09:21 斑驳_光影 阅读(760) 评论(0) 推荐(0)
spring IoC学习 ------IoC容器

摘要:spring IoC容器分为两种:BeanFactory和ApplicationContextBeanFactory: 基础类型的IoC容器,提供完整的IoC服务支持,如果没有特殊指定,默认采用延迟初始化策略(lazy-load)。因此容器初始化速度较快,所需要的资源有限,对于资源有限,并且功能要求不是很严格的场景, BeanFactory是比较何时的IoC容器选择ApplicationContext:在BeanFactory的基础上构建,除了拥有BeanFactory的所有支持,还提供了高级特性。如事件发布,国际化信息指挥,该类型容器启动之后,默认全部初始化并绑定完成,因此,容器初始化事.. 阅读全文
posted @ 2012-07-17 10:16 斑驳_光影 阅读(359) 评论(0) 推荐(0)
spring IoC学习 ------IoC基本概念

摘要:IoC(Inversion of Control)中文翻译为控制反转,指的是在创建对象这个动作不由程序发动,而是由别的程序进行注入,在没有使用IoC之前,我们构造对象方法大概有一下几种: 1)使用new关键字进行对象构造。 2)使用J2EE的service-Location解决直接的依赖耦合关系。 spring Ioc的注入方法: 1)构造方法注入:在被注入对象可以通过在其构造方法中声明依赖对象的参数列表,让外部IoC容器知道它需要依赖哪些对象。 2) setter 方法注入: 当前对象只要为其依赖对象所对应的属性添加setter方法,就可以通... 阅读全文
posted @ 2012-07-14 15:14 斑驳_光影 阅读(1744) 评论(0) 推荐(0)
7月11号 第9天 java对象序列化问题

摘要:今天用redis存储,发现客户端jedis提供的存储方法中存储的类型只有String和byte数据,没有能够存储对象的,问了下老大,有两种方法解决,一种是将对象序列化,一种是将对象转化为json格式的字符串。这就开始了我第一次序列化之旅。 要序列化一个对象,首先要创建OutputStream对象,然后将其封装在一个ObjectOutputStream对象内。此时,调用writeObject()方法将对象序列化并发送给OutputStream。在反序列化时,需要将一个InputStream封在ObjectInputStream内,然后调用readObject(),得到的结果是一个Obj... 阅读全文
posted @ 2012-07-12 15:36 斑驳_光影 阅读(480) 评论(0) 推荐(0)
7月10日 第八天

摘要:今天接触了下项目,发现我以前使用maven简直就是白痴式的用法,一起觉得maven就是用来添加jar包的,具体为什么要这么添加我自己也说不清楚。今天看了看公司怎么样使用maven,真是汗。然后就重新学习了下maven了。 基本原理: maven的基本原理很简单,采用远程仓库和本地仓库以及一个pom.xml的配置文件,将在pom.xml中配置的jar包从远程仓库下载到本地仓库,同时采用现在流行的软件体系架构,只保留最小的核心,其余功能都通过插件的形式提供,在执行maven任务的时候,他会自动下载所需要的插件。 项目管理: Maven一个重要特性是定义了项目的标准模板,可以通过加载插件去创建... 阅读全文
posted @ 2012-07-10 22:08 斑驳_光影 阅读(413) 评论(0) 推荐(0)
iptables学习(2)

摘要:Iptables 的基本配置,首先我们可以先把原有的清空# iptables –F# iptables –X设定INPUT、OUTPUT的默认策略为DROP,FORWARD为ACCEPTiptables -P INPUT DROPiptables -P OUTPUT DROPiptables -P FORWARD ACCEPT打开“回环”(自己机器可以访问自己的资源)iptables -A INPUT -i lo -j ACCEPTiptables -A OUTPUT -o lo -j ACCEPT打开所有网卡上面的ping功能,便于维护和检测iptables -A INPUT -i eth0 阅读全文
posted @ 2012-07-10 10:10 斑驳_光影 阅读(220) 评论(0) 推荐(0)
7月9号 第7天 ----iptables学习

摘要:由于最近频繁使用Linux,所以仔细的学习了一下Linux防火墙的相关知识,首先我们了解一些基本的知识。 当我们的计算机接入网络之后,就有许许多多的数据包进入,离开,或者经过我们的网络,而防火墙就是用来控制这些数据包的经过的。这些数据包会经过一些相应的规则链,比如要进入你的计算机的数据包会首先进入 INPUT 链,从我们的计算机发出的数据包会经过 OUTPUT 链,如果一台计算机做一个网络的网关(处于内网和外网两个网络连接的两台计算机,这两台计算机之间相互通讯的数据包会经过这台计算机,这台计算机即相当于一个路由器),可能会有很多数据经过这台计算机,那么这些数据包必经 FORWARD链... 阅读全文
posted @ 2012-07-10 10:07 斑驳_光影 阅读(198) 评论(0) 推荐(0)
七月6号 第四天

摘要:今天过得有点郁闷,把虚拟机装了卸,卸了装还是没有解决第二次开机就卡死的问题,最后发现是由于自己下的centOs内核不对应的问题,电脑是X86的,下了个i386的,所以就这样搞了一天,还好之前有学过Linux,所以命令基本上还是没有什么问题的。 昨天了解了redis数据库的一下东西,今天就来看看号称跑jsp最快的resin服务器,Linux下安装resin服务器需要先安装JDK,安装完成后将下载好的resin-pro-4.0.28.tar.gz解压,进入文件夹后执行 ./configure 进行自动配置。然后 执行 make 或者 make install 进行编译,这样基本就行了。然后到... 阅读全文
posted @ 2012-07-08 16:09 斑驳_光影 阅读(157) 评论(0) 推荐(0)
7月5号 第三天

摘要:第三天了,今天进入正式的学习阶段操作阶段,今天的主要任务就是熟悉redis键值数据库的安装和客户端的使用,在Linux上安装redis还是比较简单的,只要解压后 执行 make 命令就行了,装好之后就能用,比较纠结的是Linux的防火墙设置问题,在iptables中已经设置好了之后还是不能远程连接上去,比较纠结,最后直接把防火墙给关掉了。然后就可以在eclipse上面使用client客户端了,这边公司使用的是jedis的客户端,暂时还没有发现什么神奇的地方,待我慢慢发掘 阅读全文
posted @ 2012-07-06 10:21 斑驳_光影 阅读(137) 评论(0) 推荐(0)
redis Linux的安装方法

摘要:由于公司需要用到redis这个键值数据库,今天用了好久才把他安装了上去。具体安装方法如下:首先下载reids的压缩包 reidis-2.4.15.tar.gz,然后键入:# tar xf redis-2.4.45.tar.gz然后进入目录下键入如下命令:# make然后等待他安装完成.在目录中的redis.conf是其配置文件,具体配置如下:1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程daemonize no2. 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定pid 阅读全文
posted @ 2012-07-05 19:51 斑驳_光影 阅读(6416) 评论(0) 推荐(0)
7月4日 第二天

摘要:6点自动起床,开始了第二天的实习生活,一到公司就被叫去开了个晨会,小紧张,不过进去之后发现就是一个总结规划的会议,报告一下昨天做了些什么事,今天要干什么事。觉得这样对团队的效率管理很有帮助,找个时间跟实验室的小孩子们说说。 接下来就是导师L给我们布置任务啦,他先让我们说说自己感兴趣的,其实现阶段我对HTML5比较感兴趣,导师就巴拉巴拉巴拉的给我们分析了一下,然后就给我们布置了些任务,要我们参与防沉迷模块的开发,先让我们去了解下redis和resin的一些东东,redis是一个键值存储系统,和Memcached类似,resin是一个application server,对servlet和J... 阅读全文
posted @ 2012-07-05 09:37 斑驳_光影 阅读(166) 评论(0) 推荐(0)
7月3日 第一天

摘要:今天五点半起床,开始我的第一次实习~~哈哈哈说实话挺兴奋的。特别是前面几个月经历了多次的面试笔试,又被鄙视了很多次而得到的实习机会。 十点到达珠海的公司,环境不错,觉得氛围挺像实验室的,不过宽敞了许多。然后hr姐姐就带我们去入职了(发现每个公司的hr都有个特点,就是声音特甜),接下来就去见老大鸟,老大很年轻,样子看上去就像个老大。接下来就给我们介绍我们的导师,巧的是我们的导师也是广工的,98级的,应该和某冬宁同一届的。他就让我们去选择下喜欢的技术。然后才开始安排任务。下午hr姐姐就带我们去宿舍鸟,虽然说人多了点,但是有空调确实是个利好,然后因为累了,也就浑浑沉沉的睡了.. 阅读全文
posted @ 2012-07-04 16:18 斑驳_光影 阅读(153) 评论(0) 推荐(0)

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3