Richie

Sometimes at night when I look up at the stars, and see the whole sky just laid out there, don't you think I ain't remembering it all. I still got dreams like anybody else, and ever so often, I am thinking about how things might of been. And then, all of a sudden, I'm forty, fifty, sixty years old, you know?

2008年3月30日 #

[翻译] 超越分布式事务的方法 - 一个叛逆者的观点

摘要: 摒弃分布式事务的高伸缩性解决方案 Life beyond Distributed Transactions: an Apostate’s Opinion 阅读全文

posted @ 2008-03-30 06:20 riccc 阅读(6017) 评论(8) 推荐(1) 编辑

2008年3月23日 #

JavaScript问题汇总

摘要: 1. Ajax调用被杀毒软件/防火墙阻挡 记得05年做项目遇到过这种情况,发现客户端关掉kv300和瑞星的网页监控选项能够解决问题,因为是集团和供应商之间的系统,没有深究原因,而是要求用户关闭杀毒软件的网页监控选项 不久前的项目又遇到这个情况,卡巴会拦截ajax调用请求。将http header的connection设置为close可以解决问题:xmlHttp.setRequestHeader('... 阅读全文

posted @ 2008-03-23 07:14 riccc 阅读(1859) 评论(1) 推荐(0) 编辑

2008年3月17日 #

ANTLR笔记5 - 备忘

摘要: 1. 对语法框架结构的整体构思 一方面为了避免过多因素的干扰,另一方面考虑迭代完善过程,在对语法的整体构思时不要考虑语法树的结构,以及如何构造语法树的问题。2. 采用自底向上的方法 因为这样可以结合ANTLRWorks一步步测试,在Interpreter窗口选择要测试的规则就可以进行。 例如下面图中的NoViableAltException表示这个表达式无法解析 自底向上时对每一个规则最好能够充... 阅读全文

posted @ 2008-03-17 00:21 riccc 阅读(3114) 评论(0) 推荐(0) 编辑

2008年3月12日 #

OQL中的Name Resolver, Mapping Resolver

摘要: OQL中的两个概念对象 case 1: 把属性替换为列名,对象替换为表名 Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->select UserId,UserCode,UserName from User 结果: Code highli... 阅读全文

posted @ 2008-03-12 23:34 riccc 阅读(1474) 评论(3) 推荐(0) 编辑

2008年3月9日 #

ANTLR实现的SQL解析器 - OQL

摘要: OQL使用ANTLR写了个SQL解析器,这样ORM的基本功能就比较完整了。几天的时间比较仓促,所以对于最终目标,还只能算是个雏形。总体状况使用SQL解析器的主要优点:1. 基于解析之后的语法树提供用户操作接口,灵活性非常好,因为达到了对SQL每一部分的完整控制。2. 对数据库的适应性。 首先可以采用标准SQL,以及部分封装好的特性(例如分页)、函数(例如主要数据库都支持的函数,但语法有一定差异的)... 阅读全文

posted @ 2008-03-09 06:22 riccc 阅读(30773) 评论(23) 推荐(3) 编辑

2008年3月2日 #

ANTLR笔记4 - AST构造,tree grammar,tree walker

摘要: 目前为止使用的例子中,都是直接在语法文件中嵌入求值处理代码,这种方式ANTLR称为嵌入式动作(embeded action)。复杂情况下,需要基于语法树遍历(walking the tree)生成目标代码。embeded action将处理代码跟语法描述混合起来,语法复杂时使语法文件臃肿。另外语法可能经常需要修改,但语法的主要表达式不会变动,将语法识别与转换、生成(目标代码)等处理分离是有好处的。... 阅读全文

posted @ 2008-03-02 21:46 riccc 阅读(17163) 评论(3) 推荐(0) 编辑

ANTLR笔记3 - ANTLRWorks

摘要: 安装配置需要JRE或者JDK下载ANTLRWorks: http://www.antlr.org/works/index.html查看DFA需要使用Graphviz,下载安装: http://www.graphviz.org/运行antlrworks-1.1.7.jar,在菜单File -> Preferences中设置DOT path为Graphviz安装路径"bin"dot.exe。这里... 阅读全文

posted @ 2008-03-02 13:04 riccc 阅读(10741) 评论(7) 推荐(1) 编辑

2008年3月1日 #

ANTLR笔记2 - 简单语法说明

摘要: ANTLR的语法文件使用扩展巴科斯范式EBNF描述,记得编译原理的用起来非常简单,需要进一步了解的是怎么构造自己的recognizer和translator。很多的语法不需要从头写,一方面很多语言标准中基本都使用EBNF描述,另一方面ANTLR网站http://www.antlr.org/grammar/list上有大量写好的语法文件,可以参考使用。我已经忘得一干二净,从头大致了解一下。巴科斯范式... 阅读全文

posted @ 2008-03-01 15:51 riccc 阅读(9788) 评论(2) 推荐(0) 编辑

ANTLR笔记1 - 让示例跑起来

摘要: 安装配置:1. JDK环境 http://java.sun.com/ JDK bin路径设置。如果只是生成C#程序,装JRE就可以,生成Java程序,编译测试才需要JDK。网上Java的示例多一些,所以不妨装个Eclipse。2. 安装ANTLR v3 http://www.antlr.org/download.html 我没有用ANTLRWorks,下载的ANTLR 3.0.1 source d... 阅读全文

posted @ 2008-03-01 00:18 riccc 阅读(13722) 评论(3) 推荐(0) 编辑

2008年2月25日 #

The summary of REST

摘要: Architectural Styles and the Design of Network-based Software ArchitecturesA Brief Introduction to RESTRepresentational State Transfer (REST)Fielding, Roy Thomas. Architectural Styles and the Design o... 阅读全文

posted @ 2008-02-25 08:29 riccc 阅读(806) 评论(0) 推荐(0) 编辑

2008年2月20日 #

从才能三态论看绩效管理 Deming cycle/PDCA cycle

摘要: 从才能三态论看绩效管理摘录(作者:辛纯礼. 来源:人力资源·HR经理人)人的才能在社会实践中可以分为三种存在形态:一是“持有态”,指人本身所具有的才能;二是“表现态”,即人在社会实践中发挥自身所持有才能的状况,也可称之为发挥态;最后是“转化态”,是指通过人的表现或发挥,把其才能转化成工作实绩的程度。才能三态论明确界定... 阅读全文

posted @ 2008-02-20 07:49 riccc 阅读(3681) 评论(0) 推荐(1) 编辑

2008年2月18日 #

复杂度 - 软件开发中最值得警惕的问题

摘要: 画一个圆圈,圆圈里面的部分代表你已经掌握的知识,圆圈外面是你未知的领域,圆形的线条代表目前状态下,那些你已经认识到但还没有被掌握的区域。 结论是你掌握得越多,你所认识到未掌握的东西也越多。 如果把这个比喻用于软件开发过程,也是一个很有意思的现象: 这次圆圈里面的部分代表复杂度(且不管复杂度具体应当包括哪些,怎样衡量),圆圈外面的部分代表风险,圆形的线条则代表项目过程中有可能遇到的风险。 结论是复杂度越高,项目的风险越大。 阅读全文

posted @ 2008-02-18 01:38 riccc 阅读(4689) 评论(17) 推荐(0) 编辑

2008年2月15日 #

JavaScript对象模型-执行模型

摘要: 春节前受冰冻影响没有回家,期间花时间看了下ECMA Script标准,这篇文章就当作给喜欢JS的人们一个新年礼包,祝大家新年好运 阅读全文

posted @ 2008-02-15 09:54 riccc 阅读(32880) 评论(58) 推荐(23) 编辑

2008年2月12日 #

JavaScript数组操作

摘要: 函数join(delimiter): 把数组中各个元素使用分隔符(delimiter)拼成字符串concat(array1, array2, ...): 合并数组,对原数组不影响,只是返回合并后的新数组pop(): 删除并返回最后一个元素push(element1, element2, ...): 在数组末尾追加元素shift(): 删除并返回第一个元素unshift(element1, elem... 阅读全文

posted @ 2008-02-12 06:24 riccc 阅读(5873) 评论(0) 推荐(0) 编辑

2008年1月16日 #

PL/SQL的一些问题

摘要: 1. Rownum PL/SQL User's Guid and Reference中的描述: ROWNUM returns a number indicating the order in which a row was selected from a table. The first row selected has a ROWNUM of 1, the second row has a RO... 阅读全文

posted @ 2008-01-16 23:35 riccc 阅读(694) 评论(1) 推荐(0) 编辑

2008年1月15日 #

Oracle配置方面问题收集

摘要: 1. 安装ODP.NET 10.2后,它的Net Manager和Net Configuration Assistant打不开,从开始菜单点击后没有任何反应。我的解决方法:卸载ODP.NET 10.2重新安装,安装时注意两点:a) 安装目录中不要包含空个字符,例如Program Files。b) 安装的组件选择时不选择"Oracle Data Provider for .NET 1.x 10.2.... 阅读全文

posted @ 2008-01-15 22:04 riccc 阅读(2844) 评论(2) 推荐(0) 编辑

2008年1月6日 #

Oracle PGA参数

摘要: PGA: 程序全局区,服务器进程使用的内存区域,包括特定服务器进程的数据和控制信息,例如使用的操作系统资源等。UGA: 用户全局区,特定Session使用的内存区域,例如Session的SQL工作区、登陆认证信息等。Session的SQL工作区大小对查询性能的影响比较关键,shared server模式时UGA从SGA的large pool(如果有设置)或者shared pool(没有设置larg... 阅读全文

posted @ 2008-01-06 02:54 riccc 阅读(9077) 评论(0) 推荐(0) 编辑

2008年1月5日 #

NHibernate.ADOException: cannot open connection

摘要: 系统使用一段时间后出现这个错误,原因是项目中有session未关闭造成 阅读全文

posted @ 2008-01-05 21:46 riccc 阅读(2224) 评论(0) 推荐(0) 编辑

2007年12月13日 #

Emit与Reflection性能对比测试

摘要: 使用Emit代替反射性能提升比较多,不过使用Emit需要将DynamicMethod缓存起来,缓存太多也不好,所以可以使用一些折中方法。例如NHibernate,使用Emit读取/设置实体属性时,生成的DynamicMethod每次读取/设置全部的属性值,读取时返回一个object[],设置时提供一个包含各个属性值的object[]数组。在SELECT时使用这种方式一次设置好所有属性;在INSER... 阅读全文

posted @ 2007-12-13 23:45 riccc 阅读(2288) 评论(3) 推荐(0) 编辑

2007年12月3日 #

Enterprise Library Data Access Application Block结构

摘要: Summary:如何入门使用Data Access Application Block,可以参考Enterprise Library 3.1中文帮助:数据访问应用程序块。这篇文章侧重在DAAB工作原理、代码结构上的一些注解。DAAB中抽象类Database提供了针对数据库操作的接口,从它派生出来的各个数据库类使用工厂方式创建。我们可以基于这个机制进行扩展,实现对其它数据库的支持,例如:Ent Li... 阅读全文

posted @ 2007-12-03 15:28 riccc 阅读(3361) 评论(2) 推荐(0) 编辑

导航