自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

每个团队都应该有一个Appfuse式的项目 2nd

作者:江南白衣 原文出处及讨论:http://www.blogjava.net/calvin/archive/2005/09/13/12878.html 一个Appfuse式的项目,会通过项目里最典型的几个场景,demo团队目前的体系框架和设计模式。 它的好处有一打,比如为所有项目提供共同的Library Stack,提供最可靠的代码蓝本,保证大家的模式和代码风格一致,加快知识在团队的...

2005-02-21 22:37:00 56

风险管理--即使崇尚Agile的PM也应该使用的的规则

看微软的MSF,风险管理始终被放在很高的地位。其实,MSF的风险管理总结起来也就六个字,实施起来并不高深困难。(人家把这六个字写成一本书,还拿了Jolt,那是人家本事) 哪六个字呢?就是主动、正式、积累。主动:肯正视问题,自己找自己茬是前提。否则风险管理永远只留于口边。正式:正式的风险管理就是要填Form。否则心里泛泛的想一下问题算不得风险管理。1.列出所有潜在的风险和危害程度、发生概率的估算, ...

2005-02-17 23:17:00 65

Shale? JSF? Struts is dead?

世界原本很太平,Struts作为大部分程序员依赖的事实标准长治久安,而JSF作为Sun晚婚晚育的结晶,忍受着大部分程序员的冷淡。 一夜间,Struts宣布了一个新的子项目---Shale,基于JSF标准完完全全的推倒重来(Apache Stuts Team Announcement),这便同时掀开了两个战团: 一个是关于“Is Struts dead? ”的It's Official, Strut...

2005-02-16 15:44:00 82

像工匠一样进行重构--《Refactoring WorkBook》

作者: 江南白衣 最新版本及评论请看:http://www.blogjava.net/calvin/archive/2005/10/04/14790.html 像工匠一样进行重构, 让重构成为一门手艺.Martin Fowler的《Refactoring》其实更适合做一本关于重构的洗脑,宣言式的书,就像Kent Beck的《XP Explain》一样薄薄的就可以了。只可惜他却非常的厚,后面的重...

2005-02-06 15:57:00 68

Web层改进II-用xmlhttp 无声息提交复杂表单

xmlhttp是在RIA时代没有来临之前,最能使B/S程序远离每个动作刷新一次页面的痛苦做法,同时也是最平民化的一项技术,HelloWord几句话就完成了。 不过,大家对xmlhttp的应用大多只以Get方式在URL里传递少数的变量。其实即使是大量数据的Form,,只要用Javascript稍加封装,,一样可以用简单的用xmlhttp完成提交,真正做到让用家宾至如归,不到页面本身需要刷新的时候,...

2005-02-06 12:47:00 73

WEB层改进I--重(zhong)用CSS

序 一位兄弟说得好,Spring、MVC、ORM怎么分层,怎么封装,都是让程序员爽了,在客户眼里却没有什么直接增值(最多就是后继修改的速度快了一点点而已),所以,还是要花点心思在客户感觉增值的地方,一是商业智能的增强;二是客户体验的改进,也就是表现层的改进上。<网站重构>是之前很hot的一本书,其观点非常清晰简单,一个下午就能看完,也许根本没必要写成一本书。但这么简单的观点却十分受用:...

2005-02-06 12:28:00 55

DBUnit在应用间导出导入数据

应用间的数据集成(EAI)通常是两条路子: 一是使用现成的EAI、ETL框架,定义一堆XML格式的映射文件,再写一些特殊转换的transform class。但这样的工程通常比较宏大,用到最后经常会发觉还不如自己写程序快。 二是直接自己写程序用JDBC->SQL转换,快则快矣,但经常会写的比较乱、特别是表多列多的时侯。 所以,我又会用万能老倌DBUnit+Dom4j来导出导入。 DBUn...

2005-02-06 12:08:00 96

穷人的通用OLAP方案I I--Mondrian引擎

如前所说,Mondrian是OLAP的核心引擎,负责从关系数据库中计算、缓存数据,响应来自表现层的使用MS家 MDX语法的查询。具体表现形式呢,就是一个jar,随Tomcat启动。 看完那个FoodMart的Sample之后, 该自己动手了。 首先第一步是设计OLAP的数据库结构。 因为和业务数据库相比,OLAP需要冗余一些数据达到更快的查询。设计前可以先参拜一下那本经典的《完全维度设计指南》,中...

2005-02-06 02:30:00 70

穷人的通用OLAP方案I--序

缘起从前到现在,用户需要从IT系统中获取信息的变化无常与程序员从传统数据库中制作报表的代价是一个永恒的矛盾。 这边厢程序员为了应付客户忽然而至的报表需求痛苦不已, 客户只想要他想知道的东西,不会管查询语句有多么复杂,优化从海量数据中提取报表的速度有多么困难。 那边厢客户为了等程序员做一个报表,快则半天,慢则一周,事情都过去了。明明只想知道一样很简单的东西, 程序员却要抱怨查询是多么复杂,数据结构...

2005-02-06 02:28:00 62

Drools - 规则引擎可以用了么?

 所有项目都是被需求变更累死的,eXtreme Programing提供了一种哲学,一种态度,但更实际的,是那些能够应付需求变更的技术。 比如用OLAP支持复杂报表的快速定制,用script语言如Groovy支持客户自定义公式,还有Rule Engine,我们一天到晚挂在口上的亲爱的商业规则。 Rule Engine的意义: 1.将复杂的if...else....elseif 整理为一条条的...

2005-02-05 00:38:00 59

用DynaBean减除不必要的VO和FormBean

DynaBean是BeanUtils里的宝贝之一。有了动态Bean,就不用写那么多VO出来了,特别那些只是为了和View交互而存在的bean,i hate Form Bean。DynaBean的用法很简单,特别是有了LazyBynaBean之后. DynaBean car = new LazyDynaBean(); car.set("carNo",1); car.set("owner","张三")...

2005-02-02 13:53:00 48

始终会用上的Common BeanUtils

Beanutils用了魔术般的反射技术,实现了很多夸张有用的功能,都是C/C++时代不敢想的。无论谁的项目,始终一天都会用得上它。我算是后知后觉了,第一回看到它的时候居然错过。 1.属性的动态getter、setter 在这框架满天飞的年代,不能事事都保证执行getter,setter函数了,有时候属性是要根据名字动态取得的,就像这样:   BeanUtils.getProperty(myBea...

2005-02-02 13:41:00 50

JapertReports & iReport的开源报表实战

JasperReports+iReports ,类似于CrystalReport的开源报表系统,最主要能帮助我们在设计时把数据和表示分开,帮助我们实现Web报表的分页打印,分组合计,变量的加减处理,输出的格式化,还有导出Excel、pdf等,反正用过了的人都不肯回去重新自己画html页面出报表了。 google上有入门教程,非常容易。但一遇到复杂的报表,入门那套很快就玩不转了,如果没有中级的研究,...

2005-02-02 13:36:00 97

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除