随笔分类 -  07.经验点滴

摘要:在.NET上用的VS.NET+Spring.net+Nhibernate,到了Java平台上,自然对应着Eclipse+Spring+Hibernate。上一篇文章介绍了如何在Eclipse上使用Hibernate的入门,本文就简单介绍一下如何在Eclipse使用Spring。(1)首先,是下载S... 阅读全文
posted @ 2006-05-30 19:48 zhuweisky 阅读(12351) 评论(3) 推荐(1) 编辑
摘要:最近一个项目要用Java做,一点都不熟啊。没办法,只好硬着头皮啃了,花了大半天的时间,终于在Eclipse上完成了第一个Hibernate例子。下面记录关键的步骤,权作笔记,以备日后查看。(1)下载Hibernate,并向项目中导入Hibernate。Project->Properies->Jav... 阅读全文
posted @ 2006-05-30 15:08 zhuweisky 阅读(19270) 评论(12) 推荐(5) 编辑
摘要:以下是我在使用NHibernate过程中遇到的一些小问题,记录下来,权当笔记吧!1.自增序列与严格类型匹配 在使用Oracle数据库的自增主键时,hbm.xml配置文件中generator class可设为"increment",也可设为"sequence",最好使用"increment",使用"... 阅读全文
posted @ 2006-05-19 10:45 zhuweisky 阅读(3857) 评论(5) 推荐(3) 编辑
摘要:1.Nullable类型可以这么用! int?cursor;//其它逻辑cursor=(++cursor)??default(int); 上述代码的含义是,如果cursor为空值,则取int型的默认值0,否则,将cursor值增加1。特别注意++cursor,当cursor为空值的时候,++curs... 阅读全文
posted @ 2006-05-08 15:55 zhuweisky 阅读(2900) 评论(7) 推荐(0) 编辑
摘要:你一定经常看见类似下面的图标: 它们就表示“撤销”与“反撤销”。在程序中,这种功能通常是使用Command模式实现的,本文也不例外。首先抽象定义Command,使用ICommand接口: publicinterfaceICommand{voidExcute();} Excute表示执行该ICom... 阅读全文
posted @ 2006-04-30 09:49 zhuweisky 阅读(8143) 评论(11) 推荐(2) 编辑
摘要:NHibernate功能的强大,勿庸置疑。但是很多地方使用起来也颇为繁琐,比如,无法完整的构建数据层、我们很多时候还是需要绕过NHibernate而直接使用ADO.net;比如,任何一次数据访问,哪怕只是简单的数据读取,我们都需要仔细的处理Session、Transaction。如果你的数据层使用... 阅读全文
posted @ 2006-04-28 09:40 zhuweisky 阅读(1912) 评论(5) 推荐(0) 编辑
摘要:从事了几年的C/S模式的开发,曾一直无暇研究B/S,前段时间摊上了一个B/S的活,这才开始认真的关注其B/S开发。而且,AJAX技术的风起云涌,也使得B/S应用的表现力日益增强,大有逐步吞食C/S领地之势。这两天通过《Ajax基础教程》开始学习Ajax技术,在附录的Ajax框架介绍中发现了这样一句... 阅读全文
posted @ 2006-04-19 10:08 zhuweisky 阅读(4949) 评论(14) 推荐(0) 编辑
摘要:很久以前就尝试过使用AOP进行权限控制的管理,那时候只是试试而已,并没有在项目中应用过,最近跟的一个B/S项目中要求我们把权限管理加进去,于是我考虑以前的AOP方法是否真的可行。思考许久后的结果是,可行,但是太麻烦。 主要原因在于需要在UI层逻辑层数据层之外增加额外的一层来使得AOP拦截可以以恰当... 阅读全文
posted @ 2006-04-08 22:39 zhuweisky 阅读(3359) 评论(5) 推荐(0) 编辑
摘要:(环境:.Net1.1 ,Spring.net 1.2 Preview)1.集合属性注入 我们的组件经常需要集合类型的属性注入,比如我的Hook(钩子)组件需要注入一个集合,该集合中的元素(int型)指明了要截获哪些类型的消息。我们经常使用IList处理集合问题: #regionHookList其中... 阅读全文
posted @ 2006-03-29 10:17 zhuweisky 阅读(2740) 评论(5) 推荐(0) 编辑
摘要:对于“依赖注入”,我最常用的是“设值注入法”(即通过Setter属性注入),对于需要注入很多依赖的类来说,一个一个的手动写属性的繁琐已经让我难以忍受了。于是我写了一个VS2003的小插件,你只需要输入类型和属性名,它就能在编辑器指定的地方自动生成属性,并且一次可生成多个属性。(我试用了VS2005... 阅读全文
posted @ 2006-03-24 16:01 zhuweisky 阅读(4143) 评论(17) 推荐(1) 编辑
摘要:在我前面的“压缩与解压缩 ZipHelper ”一文中提到了使用ICSharpCode.SharpZipLib.dll库的BZip2OutputStream和BZip2InputStream来进行数据流的压缩。这几天在我的AgileIM的测试中发现使用BZip2OutputStream和BZip2... 阅读全文
posted @ 2006-03-09 11:49 zhuweisky 阅读(1687) 评论(2) 推荐(0) 编辑
摘要:我在AgileIM的开发中解决视频/音频会话功能时,发现传输的音/视频数据量太大,通过一些格式转换(如BMP->JPG、或 帧间预测编码)可以适当减少带宽的需求,但是仍然不能满足需求,于是我想到了数据压缩,经过我测试、普通的音/视频数据经压缩后可以只有原来的一半大小,基本可以满足需要了。压缩/解压... 阅读全文
posted @ 2006-03-06 09:40 zhuweisky 阅读(3631) 评论(11) 推荐(0) 编辑
摘要:.NET FrameWork 1.1之前版本根本不支持多媒体,.NET FrameWork 2.0也只是对多媒体进行了最简单最有限的支持,如果在我们的.NET程序中需要播放多媒体文件,通常只有通过互操作引入Activex控件来播放音频/视频。在网上找了N久关于C#播放rm视频的文章,终于有了一点结... 阅读全文
posted @ 2006-02-15 11:14 zhuweisky 阅读(5675) 评论(14) 推荐(0) 编辑
摘要:以前曾写过一篇“关于跨程序集的反射”的blog,关于跨程序集加载类型,文中使用的是方法是:先加载目标类型所在的程序集,再使用Assembly.GetType方法获取类型。文后Luna兄的评论说,可以直接使用Type.GetType(">,>")来加载类型,当初我查了MSDN,MSDN中也说到了这一... 阅读全文
posted @ 2006-01-06 14:44 zhuweisky 阅读(2569) 评论(5) 推荐(2) 编辑
摘要:上一篇主要讲到了Tcp通信层中的核心组件――Tcp组件的实现,Tcp组件是整个通信层的消息驱动源,甚至,可以将Tcp组件看作是我们整个服务器系统的消息驱动源,消息处理过程从这里引发。类似的消息驱动源还有发布的WebService接口、Remoting接口等。今天我们需要关注的是Tcp通信层中的“中... 阅读全文
posted @ 2006-01-05 11:13 zhuweisky 阅读(5374) 评论(8) 推荐(1) 编辑
摘要:2006年已经来临,回首刚走过的2005,心中感慨万千。在人生和生活的目标上,有了清晰明确的定位,终于知道了自己喜欢什么样的生活,喜欢什么样的生活方式;在技术上,成熟了不少,眼界也开阔的不少,从面向对象到组件、从.Net到J2EE、从微软到开源,颇有收获。特别值得一提的是,认识了Rod Johns... 阅读全文
posted @ 2006-01-04 15:40 zhuweisky 阅读(9451) 评论(15) 推荐(3) 编辑
摘要:在Web开发中,经常需要使用Session来保存特定用户的信息,在我们的程序中很多地方散落着类似下面的语句:intuserAge=(int)this.Session["UserAge"]; 我们知道,Session中存放的是键值对,键是string类型的,如果我们一不小心把上面的语句写成这样:in... 阅读全文
posted @ 2005-12-31 17:20 zhuweisky 阅读(2299) 评论(4) 推荐(0) 编辑
摘要:设想这样一种场景:我们的服务系统提供一系列的功能服务,而以后会有更多新的功能服务增加进来,也可能出现功能服务需要被更改或移除的情况。对于这样的服务系统,一个常见的基本的要求就是,在添加/移除/更新功能服务的时候不能停止的服务系统的运行。通常,将每一项服务封装成一个插件Dll,可以非常容易地实现“插件 阅读全文
posted @ 2005-12-30 15:26 zhuweisky 阅读(6213) 评论(13) 推荐(4) 编辑
摘要:手头上的一个项目使用了Spring.net的AOP了处理程序的异常,一不小心就掉进了陷阱,这里记录下来,希望对后来者有所帮助。Spring.net的AOP实现是通过运行时创建动态的AOP代理来完成的。简单图示如下: 图中的“POJO”以词来自Java,表示一个普通的.net对象,所有对POJO的调... 阅读全文
posted @ 2005-12-27 15:37 zhuweisky 阅读(1227) 评论(0) 推荐(0) 编辑
摘要:在.Net Remoting的应用中,经常碰到需要预定Remoting Object的事件的情况,要能使远程事件发布/预定如预期中的进行,需要注意如下问题:1. Remoting 配置 在Remoting配置文件中,需要将typeFilterLevel设置为Full,否则,将出现RemotingH... 阅读全文
posted @ 2005-12-16 15:33 zhuweisky 阅读(2647) 评论(2) 推荐(0) 编辑

点击右上角即可分享
微信分享提示