隔叶黄莺 The Blog of Unmi

〖隔叶黄莺三四声,挂壁飞瀑千万尘。若是人间无净土,此处为何妙语真! 隔叶黄莺四字,本非取自此句,而有寄寓他意,因见妙语,亦与予心合!〗

BlogJava 首页 新随笔 联系 聚合 管理
  209 Posts :: 84 Stories :: 392 Comments :: 0 Trackbacks

06 2007 档案

     摘要: 网上有许多版本的手机号码归属地查询软件,很多还收费的,好奇怪,有些还具有流氓习气。看不过,所以自己亲自动手写了一个来玩玩,最初选用过数据存储引擎是 HSql 和 Derby,因为他们有些弊端很明显,数据文件大、多文件支持、例如初始化时特慢、查询效率也不高、占有内存多、数据安全性不高,最后按定了 SQLite。

语言也是先用 Java 的 SWING 来实现的,后来觉得 Java 写的程序慢是一个方面,还要虚拟机才能玩得转,有碍于发布,所以选用了 VC 来写,它写出来的东西可方便,把用到的动态库和数据文件考到别的机器上就能运行,最后应用了一个皮肤美化一下。

本软件定名为:手机号码归属地查询(俗),英文名:Mobile Locator(名不符实),可查130-139及159段手机号码,数据我将会持续  阅读全文
posted @ 2007-06-25 22:27 隔叶黄莺 阅读(1546) | 评论 (22)  编辑

     摘要: 接前面一篇日志,当用 CInternetSession 抓到网页内容之后,就要从中按某种模式截取自己想要的东西,比如其中的电话区号,对于这种事情最擅长的莫过于正则表达式了,以及它的分组/后向引用功能。

VC.net 倒是提供了一个很好的正则表达式类库 CATLRegExp (据说是全世界效率最高的正则表达式库),可是却不能在VC6上使用,VC6可以使用VBS(Microsoft VBScript Regular Expression 5.5)这个 COM 来处理正则表达式,或者引入 vbscript.dll 的方式,最好的办法还是借助于第三方库来处理正则表达式,如 boost,更何况若是使用 COM 就不太值(COM给人的感觉总有些笨拙)。

微软件研究院也荣誉出品了一个既能在VC7也能在VC6下用的正则表达式库,叫做 GRETA,详情请点击链接 The GRETA Regular Expression Template Archive for C++。

下面就介绍 boost 正则表达式的使用,从 boost 库的下载安装开始 阅读全文
posted @ 2007-06-24 00:53 隔叶黄莺 阅读(544) | 评论 (0)  编辑

     摘要: 在 VC 中用 WinInet 的 CInternetSession::OpenURL(url),得到一个 CFile,读取其中的内容  阅读全文
posted @ 2007-06-23 20:10 隔叶黄莺 阅读(823) | 评论 (0)  编辑

     摘要: 1、SQLite简介
SQLite 是 D. Richard Hipp 用 C 语言编写的开源嵌入式数据库引擎。SQLite第一个Alpha版本诞生于2000年5月. 至今已经有7个年头了.目前版本是 2007.6.18 出来没久的 SQLite 3.4.0

其创建者保守地估计 SQLite 可以处理每天负担多达 100,00 次点击率的 Web 站点,并且 SQLite 有时候可以处理 10 倍于上述数字的负载。

下面是访问SQLite官方网站: http://www.sqlite.org/ 时第一眼看到关于SQLite的特性.

1. ACID事务 - 甚至是系统宕机或者断电后都能保持数据的一致完整性
2. 零配置 – 无需安装和管理配置
3. 实现了大部分的 SQL92 标准 (尚未实现的特性)
4. 储存在单一磁盘文件中的一个完整的数据库   阅读全文
posted @ 2007-06-23 14:09 隔叶黄莺 阅读(1210) | 评论 (1)  编辑

     摘要: 忽又想,编写桌面软件 Java 始终是跟不上步伐,VC 能非常好的平衡开发与运行的效率。 掌握一个 IDE,想提高开发上的效率,记住常用的快捷键是很有必要的,真正的对战类游戏高手无不娴熟于键盘的微操作,那种叫嚣着真正的程序员是用记事本编程实在听来让人冷峻不经。于是也就有了下文,在网上搜来的 VC 常用快捷键

快捷键 操作
CTRL+C 或 CTRL+INS 拷贝
CTRL+X 或 SHIFT+DEL 剪切
CTRL+V 或 SHIFT+INS 粘贴
CTRL+F 查找
CTRL+H 替换
CTRL+L 删除一行
ALT+F2 编辑和修改书签(永久书签)
CTRL+F2 编辑和修改书签(临时书签,当文件关闭后,书签就无效了)   阅读全文
posted @ 2007-06-23 00:07 隔叶黄莺 阅读(106) | 评论 (0)  编辑

     摘要: Eclipse 内置就对 CVS 很好的支持,而 Visual Studio(.net) 和 Rational Rose 等对 VSS 支持很好,因为他们遵循的是 Microsoft SCC API,那么如何让 Microsoft SCC API 与 CVS 桥接起来呢?这就是现在要介绍的几个工具
1. Jalindi 这个程序完全免费
2. CVS SCC Proxy 这是一个商业版的软件  阅读全文
posted @ 2007-06-22 04:09 隔叶黄莺 阅读(319) | 评论 (0)  编辑

     摘要: 用 VC6 的 MFC AppWizard 生成的窗口程序,窗口标题或者标签用中文,编译执行发现中文成乱码了,奇怪,以前怎么没有出现这种问题呢?

在网上找找资料才知道,原来我现在用的是非中文 XP 操作系统,在用向导生成窗口程序的过程中,没有中文语言的选项。不知道为什么,我的操作系统的区域都是设置成的中国,语言也是设成的简体中体,都没错的,VC6 安装程序看我的界面不是中文就不给我装上中文语言支持的动态库。

解决办法是:可以在 VC6 安装光盘中找到 APPWZCHS.DLL 文件(也点击 6.0.8168.0__APPWZCHS.zip 可从此处下载),拷入到 C:\Program Files\Microsoft Visual Studio\COMMON\MSDev98\Bin\IDE,确切位置视你的 Visual Studio 安装目录而定。这样重新用 MFC AppWizard 建一个工程,在第一  阅读全文
posted @ 2007-06-21 02:00 隔叶黄莺 阅读(512) | 评论 (1)  编辑

     摘要: 81. 继承 AbstractController 要覆盖的方法是 handleRequestInternal(request,response);new ModelAndView("counrseList","courses",courses) 第一个参数是 view 的逻辑名,第二第三个参数是传递给 view 的名称/数值对
82. 当控制器需要根据参数执行工作时,应该继承 AbstractCommandController,你的 Controller 中需要覆盖 handle 方法,并且需要在构造函数中指定命令类,如  阅读全文
posted @ 2007-06-16 20:56 隔叶黄莺 阅读(693) | 评论 (0)  编辑

     摘要: 71. Spring 的 MVC 和 Struts 的 MVC 基本一致
Spring 的控制流程是:请求->DispatcherServlet->从 HandlerMapping 中查询到处理该请求的 Controller-> Controller 的 handleRequest 方法调用业务方法,最后返回 ModelAndView (ModelAndView告诉了 DispatcherServlet 转向到哪个视图)
Struts 的控制流程是:请求->ActionServlet->从 ActionMapping 中查询到处理该请求的 Controller (Action类)->Action 的execute 方法调用业务方法,最后返回 ActionForward (ActionForward告诉了 ActionServlet 该转向到哪个视图)  阅读全文
posted @ 2007-06-16 16:50 隔叶黄莺 阅读(679) | 评论 (0)  编辑

     摘要: 61. 对于 JndiObjectFactoryBean 查找 jndi 资源未提及,如何设置 jndiEnvironment 属性,如果是在J2EE容器中运行,没什么问题,只是以单独应用程序运行就会错,如下在容器外运行需要加上 jndiEnvironment 配置,指定实现类,及URL等  阅读全文
posted @ 2007-06-07 23:53 隔叶黄莺 阅读(135) | 评论 (0)  编辑

     摘要: 第一种方式:构造 Session 时传入一个 Properties 和 Authenticator

第二种方式:构造 Session 时只传入 Properties,然后再设置 Session 的 PasswordAuthentication

第三方式:构造 Session 时也是只传入 Properties,与上不同的是,不需要设置 Session 的 PasswordAuthentication 属性,在发送前 Transport 实例连接一下 smtp 服务器,完后要关闭 Transport 实例  阅读全文
posted @ 2007-06-07 10:05 隔叶黄莺 阅读(109) | 评论 (0)  编辑

     摘要: 原来的项目中基本都是用 JSP+Tag 来展示内容,有时也有 Jasper Report 做报表,报表也算是一种模板技术,只是有些重量级。看过 Spring 的书籍,都会对 Velocity 和 FreeMaker 有介绍,带动了我对先前看过的 *.vm 文件的研究提上了日程,了解之后,已觉相见恨晚。

下面讲利用 Velocity 怎么更好解决目前项目的一个简单问题:系统在进行支付了支付后,自己按设定的信息模板发送一条短信给责任人。信息模板是:

{单据责任人}:您的 {单据号} 号{单据类型}在 {操作日期} 日已支付

原来的处理方式是在程序中拿到上面定义的模板一次又一次的把前面大括中内容(含大括号)replaceAll() 成实际数据。  阅读全文
posted @ 2007-06-04 22:53 隔叶黄莺 阅读(425) | 评论 (1)  编辑

     摘要: 41. 337页配置中的 应该是 ,Acegi 的包名也由原来的 net.sf.acegisecurity 变成了 org.acegisecurity,跟个 hibernate3 似的
42. Spring提供了两种与 Struts 集成的方式
1)让你的Action继承 ActionSupport
2) 让 Spring 管理你的 action  阅读全文
posted @ 2007-06-04 01:11 隔叶黄莺 阅读(171) | 评论 (0)  编辑

     摘要: 31. Spring 把数据访问流程中的固定部分和可变部分分开,分别映射成两截然不同的类,模板(Template)和回调(Callback),模板管事物控制、资源管理以及异常处理;回调实现特定于应用的部分--创建 statement、绑定参数、以及整理结果集。模板方法模式的优秀应用
32. JdbcTemplate template = new JdbcTemplate(myDataSource); 构造。 所有 Spring Dao 模板类是线程安全的,可以为每一个 DAO 配置一个 JdbcTemplate 属性,也可以让 DAO 类继承 JdbcDaoSupport  阅读全文
posted @ 2007-06-03 22:06 隔叶黄莺 阅读(184) | 评论 (0)  编辑

     摘要: 1. 标签中的 bean, local, parent 三个属性的区别
2. 可以换着用都可以为 List, Set 以及数组属性赋值
3. 属性用 spring 进行装匹时 key 值只能是字符串类型,不过一般能满足要求
4. 装配 map 属性要用 foo, 而装匹 properties 属性可以写成 foo, 这是因为 properties 的值总是字符串,而 map 中很随意  阅读全文
posted @ 2007-06-03 13:47 隔叶黄莺 阅读(182) | 评论 (0)  编辑