本博客不再更新

本博客不再更新,请访问http://blog.sina.com.cn/fulaoshi

统计

最新评论

#

[导入]如何消除if else

   
这是一位同学的回帖,感觉可以单独拿出来说说,原文:





我们现在在做一个项目,我负责整改以前开发过的代码,可业务方法里的IF()ELSE{}语句特别长,看的都头痛,请问您有什么好办法能避免少些判断语句吗?



    消除if
else的方法有很多,要区分不同的情况。根本上解决这个问题的途径是参阅Martin
Fowler的大作《重构》



   给出两个常见的方法:

  
1,用键值对格式的配置文件代替if

   举例:获取数据库驱动类名

   final int CURRENT_DB =
0;

   String driver = "";

   if (CURRENT_DB==0)
driver="com.mysql.jdbc.Driver";

   if (CURRENT_DB==1)
driver="com.microsoft...";

   if (CURRENT_DB==2)
driver="sun.jdbc.odbc...";

 

  
可以采用配置文件简化,假设有如下的配置文件

   DRIVER =
com.mysql.jdbc.Driver

   URL =
jdbc:mysql://localhost:3306

   Then you
can use java.util.Properties load the configuration
file, read the value simply be method
get(key).



   2,Use Design Pattern :
Strategy(策略模式), Factory
and State may the problem

  
例子可见《深入浅出设计模式》


文章来源: http://underwind.javaeye.com/blog/63129

posted @ 2007-03-20 12:55 本博客不再更新 阅读(557) | 评论 (0)编辑 收藏

[导入]Birt部署完毕

   
终于完成了Birt的部署,真是会者不难,难者不会,前两天觉得很复杂的事情原来这么简单。

 

   
不过对Birt这种用html +
css实现报表的思路有点怀疑,无法做到预览时zoom,甚至无法打印(当然,借助IE
7或ff的缩放功能zoom没有问题,再借助于iText输出成pdf,打印也可以解决)。当然,在B/S架构下,也很难找到更好的解决办法(iReport可以用Applet进行预览,但是对客户端要求就高了).

 

   
一会儿看看Birt视频,然后找时间和报表专家讨论一下,对Birt的学习就暂告一段落了.

 

   
3月快结束了,还有很多事情没有做完,加紧时间啦


文章来源: http://underwind.javaeye.com/blog/60789

posted @ 2007-03-18 07:17 本博客不再更新 阅读(719) | 评论 (0)编辑 收藏

[导入]再也不用beta版,m版的开源软件了

   
今天录视频的最后一部分,又出现了问题,Spring代理Service后出现cglib的错误。再次苦苦搜索,原来是hibernate
3.1和Spring
2中的某些jar包(CGLib)冲突所致,再次晕。删除了hibernate中的CGLib,然后测试一切正常,包括输入不存在的ID时数据会滚。接下来我要做的第一件事儿就是重新下载最稳定的Hibernate和Spring。

 

   
以后再也不用beta版,m版的开源软件了


文章来源: http://underwind.javaeye.com/blog/60462

posted @ 2007-03-16 13:52 本博客不再更新 阅读(37) | 评论 (0)编辑 收藏

[导入]崩溃边缘

   
算起来已经连续工作17天了,精神状态十分的差,明显感觉到这个礼拜讲课完全不在状态,尤其是今天上午的spring
+
hibernate,简直讲的一塌糊涂,于是承诺晚上发个视频弥补一下。之前做的视频加了AOP,并不是适用,于是重做一个,顺便加入JUnit。


   
接下就遇到了两个罕见的bug,首先是MyEclipse在我的机器上第一次莫名罢工,导致struts-config.xml中的所有节点消失,只得自己手工重写,这也罢了。接下来的spring整合struts中,又遇到了今天下午小何遇到的怪问题,只得google,goo而不得,换关键字继续goo,终于在一个老外的博客中找到原因:Spring
2.0的某些版本(rc
2)中的一个jar包的MF文件有错误(多了几个换行),需要手工解压jar包修正后重打,郁闷啊,开源软件真是不可靠啊,说什么Release
early, Release often,以后还是用稳定版吧。


    
晚上11点,终于所有工作完成,唉,明天又是一个8小时。


文章来源: http://underwind.javaeye.com/blog/60193

posted @ 2007-03-15 14:52 本博客不再更新 阅读(83) | 评论 (0)编辑 收藏

[导入]Hibernate中对象的三态

   
Hibernate中对象可能有三种状态:临时态(Transient),游离态(Detached)和持久态(Persistent)。

   
对象中没有主键(或主键在数据表中不存在)时为临时态,一般在对象刚通过new操作符创建出来的时候

   
如果临时态的对象进行了save操作,则变为持久态

   
持久态对象所属的Session关闭,则变为游离态。delete持久态对象,则变为临时态

 

   
下面是状态图


    


文章来源: http://underwind.javaeye.com/blog/59906

posted @ 2007-03-14 14:30 本博客不再更新 阅读(109) | 评论 (0)编辑 收藏

[导入]最近做的事儿

   
三月份实在太忙了,没有好好更新博客,写个流水账凑数吧。



   
以下是三月份要学习或进行的工作:




  1. 进一步掌握基本的Ruby特性(资料:英文电子版的Programming Ruby
    2)

  2. 深入了解JSF,开发JSF组件(等待从当当网买的书)


  3. 学习使用BIRT制作报表(只差部署环节了,资料全部来源于Eclipse官方网站和Eclipse中国论坛)

  4. 进一步掌握EJB 3.0(挑选一个好的Application
    Server,准备分别尝试JBoss 4, GlassFish v2, Sun AS 9。)

  5. 坚持看VOA Special English

  6. 完成JIRA的资料




  
任务好重啊,刚芭蕾!!!


文章来源: http://underwind.javaeye.com/blog/59418

posted @ 2007-03-12 05:08 本博客不再更新 阅读(86) | 评论 (0)编辑 收藏

[导入]Blowing in the wind

   
老婆突然说要听阿甘正传中珍妮在酒吧唱的歌,并且似是而非的哼了几句,我居然听出了是Bob
Dylan的《Blowing in the
wind》,赞一个。重新去百度下载了这首歌,还是十分的动听,Bob的嗓音,口琴,歌词,试着翻译一下:

 

一个人要历经多少坎途

才能称之为男人

白鸽要飞跃多少海峡

才能在细沙中安眠

满天的炮火要持续到何时

才能销声匿迹

答案,我的朋友,只有风知道

答案只有风知道

 

一座山能耸立何时

直到被海水冲垮

 

一些人能忍耐几时

才能重获自由

 

另一些人则能多少次的视而不见

 


答案,我的朋友,只有风知道

答案只有风知道



一个人要仰望多少次

才能看到天空的曙光


 

一个人要聆听多少次

才能听到人们的抽泣

 

还需要再有多少死亡

他才知道已经逝去了太多的生命

 


答案,我的朋友,只有风知道

答案只有风知道

 





 


How many roads must a man walk down

Before they call him a man

How many seas must a white dove sail

Before she sleeps in the sand

How many times must the cannon balls fly

Before they're forever banned

The answer, my friend, is blowing in the wind

The answer is blowing in the wind





How many years must a mountain exist

Before it is washed to the sea

How many years can some people exist

Before they're allowed to be free

How many times can a man turn his head

And pretend that he just doesn't see

The answer, my friend, is blowing in the wind

The answer is blowing in the wind



How many times must a man look up

Before he can see the sky

How many ears must one man have

Before he can hear people cry

How many deaths will it take

'Till he knows that too many people have died

The answer, my friend, is blowing in the wind

The answer is blowing in the wind


文章来源: http://underwind.javaeye.com/blog/57873

posted @ 2007-03-06 12:46 本博客不再更新 阅读(44) | 评论 (0)编辑 收藏

[导入]Ruby中的函数指针


最近忙啊,一直到18号才能有半天休假,也没时间系统的学习了,抽时间看看Programming
Ruby
2,·写一些简单的例子好了。这个“函数指针”在C语言里面也可以实现,当然,在Ruby中显得更简单

 

def add(a, b)

  a+b

end

 

def minus(a, b)

  a-b

end

 

def calc(who, a, b)

  who.call(a ,b)

end

 

m = method(:add)

puts calc(m, 7,3)   #result = 10



m = method(:minus)

puts calc(m, 7,3)   #result = 4


文章来源: http://underwind.javaeye.com/blog/57276

posted @ 2007-03-04 12:29 本博客不再更新 阅读(105) | 评论 (0)编辑 收藏

[导入]【号召】一句话总结自己面试/笔试的经验/教训

如题,积累起来,形成一个知识库,哈哈。

 

大家踊跃啊!!!!


文章来源: http://underwind.javaeye.com/blog/56871

posted @ 2007-03-01 13:25 本博客不再更新 阅读(132) | 评论 (0)编辑 收藏

仅列出标题
共3页: 上一页 1 2 3