摘要: 在学习多线程的过程中,又遇到了一个问题:C#代理.上网查了些资料,对代理有了一个初步的认识,记一点笔记.C#代理实际上类似于C++中的函数指针,因为C#中不存在指针,所以用代理可以完成一些原来在C++中用函数指针完成的操作,例如传递一个类A的方法m给另一个类B的对象,使得类B的对象能够调用这个方法m。但与函数指针相比,delegate有许多函数指针不具备的优点。首先,函数指针只能指向静态函数,而delegate既可以引用静态函数,又可以引用非静态成员函数。在引用非静态成员函数时,delegate不但保存了对此函数入口指针的引用,而且还保存了调用此函数的类实例的引用。其次,与函数指针相比,del 阅读全文
posted @ 2013-10-18 14:53 leLoveBeauty 阅读(5526) 评论(0) 推荐(0) 编辑
摘要: 首先需要声明的是“语法糖”这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换;而且可以提高开发编码的效率,在性能上也不会带来损失。这让java开发人员羡慕不已,呵呵。1. 经过简化的Property早些时候我们这样声明Property1234567891011privatestring_myName;publicstringMyName{get{ return_myName; }set{ _myName = value; }}千篇一律的这样声明,没有多大意义,于是C#的设计人员将这个千篇一律的工作交给了编译器帮我们做了,我们现在可以这样声明1publicstringM 阅读全文
posted @ 2013-10-18 14:44 leLoveBeauty 阅读(261) 评论(0) 推荐(0) 编辑
摘要: [-]方法一:使用现成的PreResultListener监听器事件方法二,实现自己的ActionInvocation ,手动分离Action和Result的执行Interceptor说明Interceptor的接口定义没有什么特别的地方,除了init和destory方法以外,intercept方法是实现整个拦截器机制的核心方法。而它所依赖的参数ActionInvocation则是我们之前章节中曾经提到过的著名的Action调度者。我在这里需要指出的是一个很重要的方法invocation.invoke()。这是ActionInvocation中的方法,而ActionInvocation是Act 阅读全文
posted @ 2012-09-27 16:45 leLoveBeauty 阅读(9166) 评论(0) 推荐(0) 编辑
摘要: Struts2架构图 请求首先通过Filter chain,Filter主要包括ActionContextCleanUp,它主要清理当前线程的ActionContext和Dispatcher;FilterDispatcher主要通过AcionMapper来决定需要调用哪个Action。 ActionMapper取得了ActionMapping后,在Dispatcher的serviceAction方法里创建ActionProxy,ActionProxy创建ActionInvocation,然后ActionInvocation调用Interceptors,执行Action本身,创建Resu... 阅读全文
posted @ 2012-09-27 11:45 leLoveBeauty 阅读(246) 评论(0) 推荐(0) 编辑
摘要: Servlet的一些技巧&模板代码Request相关获得一些基本参数?12345678910//获取提交地址 request.getRequestURI(); //获取提交内容 request.getQueryString(); //获取客户端地址(浏览器) request.getRemoteAddr(); //获取客户端端口(浏览器) request.getRemotePort(); //获取提交方法(GET,POST or .....) request.getMethod();获得提交内容体?123456789101112131415161718192021222324252627 阅读全文
posted @ 2012-09-25 13:42 leLoveBeauty 阅读(206) 评论(0) 推荐(0) 编辑