分类目录归档:Java

Java

树的生成

  在编程中经常遇到用“树”的情况,我对树也是情有独钟——虽然现在流行的BBS架站软件几乎没有树。但是在大型BBS站点中,左侧的树导航几乎都是必备的。以前用PHP的时候,我用的方法是用PHP动态生成html树,但是这样的缺陷是很明显的,每点开一个节点,就需要刷新整颗树!再者,导航树本身的变动是不大的,因为版面的开设和删除是一种非经常性的工作。同样,这个观点可应用于人事管理系统中的机构树。   所以对于这种变动不大,数据量不大的树,可由程序动态生成javascript,显示的时候直接用这个javascript,可以减少页面的刷新。而这个javascript只是在树节点数据发生改变的时候才动态刷新生成一个新的javascript。

发表在 Java | 评论关闭

消除JBuilder光标定位不准的问题

  初装的JBuilder存在光标定位不准的问题,这主要是由于使用了粗字体的原因。消除的方法是配置其IDE窗口的显示选项:打开其配置窗口(JBuilder9是tools/editor preference,JBuilderX是tools/preference中的editor项)中的color页,检查各种文件类型中的“screen element”列表框中的每项的设置,只要发现其属性Bold复选框为选中状态,则清除其选中状态。检查并清除完毕后,单击“OK”按钮即可。

发表在 Java | 评论关闭

Web框架比较

Web框架比较:Struts、Spring MVC、WebWork、Tapestry和JSF(by Matt Raible)   Matt Raible,J2EE5.0专家组成员、开源项目Roller Weglogger、XDoclet、Struts Menu,DisplayTag,AppFuse提交者。 各自优缺点: 1、 Struts 优点:   业界“标准”(很多成功案例),学习资源丰富,HTML标签非常优秀 缺点:   ActionForms使用不便、无法进行单元测试(StrutsTestCase只能用于集成) 2、 Spring MVC 优点:   Lifecyle for overriding binding, validation, etc.;易于同其它View框架(Titles等)无缝集成,采用IOC便于测试 缺点:   使用人数少、jsp中要写很多代码、控制器过于灵活,缺少一个公用控制器 3、 WebWork 优点:   结构简单易于扩展、标签库易于定制、拦截器非常出色 缺点:   文档示例很少、客户端验证技术不成熟 4、 Tapestry 优点:   很好用只要你能学会、Html模板、Healthy and smart user … 继续阅读

发表在 Java | 评论关闭

参加BEA开发者日活动

  成都站在天府丽都喜来登饭店办的,BEA公司的宣传挺下本的,不过看他们的演示,感觉Weblogic真的很好用,感觉“那边”就是处在蛮荒时代。 PS: 激情是红色的 BEA dev2dev Days 2004 成都站报道 (2004.11.09) 来自:CSDN   小编在给大家报道完深圳站的大会后,接着就马不停蹄的赶到了成都, BEA dev2dev Days 2004 成都站将于11月5日在蓉城喜来登酒店拉开大幕。   出差以前,和一同事聊天,同事没有来过成都,他告诉我,在他的想象中,成都应该是红色的,我不甚理解。他解释到,成都有辣椒,有火锅,有辣妹子……,我恍然大悟。小编是四川人,也在成都工作过两年,可能对这些红早已习惯甚至麻木。蓝色代表忧郁,白色代表纯洁,红色?也许代表激情吧。   我又是一大早就来到了酒店,和在深圳一样,在门口很显著的位置摆放着BEA dev2dev Days 2004宣传画,并清晰指明了会议举办的具体地点,看着BEA红色的宣传画,我突然想起了同事的那句话:“成都是红色的。”不禁笑了笑。照例来到展台布置好一切,我发现虽 然我已经很早就来了,但是还是有很多的开发者比我来得更早。差不多到了九点,大会的报道处已经是人山人海了,让我不禁感慨成都开发者的热情。9:30,会议正式开始,我一进会场就发现整个会场已经坐满了,后来还有一些开发者源源不断的过来听演讲,但是由于很多开发者没有事先注册,所以BEA公司就没有预先准备这么多座位,没办法,只有加了不少座位,甚至有一些开发者站着在听,但是他们听得都很认真,投入。他们——是红色的。这一场景不禁也让我感叹BEA公司在开发者心目中的号召力,BEA——也是红色的。   和在深圳的会议议程一样,先由BEA系统(中国)有限公司技术总监喻思成作开场白,接着就由李巍和郑曙光两位讲师对整个BEA的产品线以及广大开发者感兴趣的技术进行了精彩的演讲,并且不时有一些开发者把自己的问题写成纸条传上去,两位讲师也一一做出了圆满的解答,博得了一阵阵由衷的掌声。由于BEA的这些讲师难得到成都一次吧,在茶歇的时候这些开发者还不断围着两位讲师问着各种技术问题,其他的开发者不管是认识还是不认识的也在三五成群的聚在一起讨论,让我确实感受到dev2dev Days确实是开发者的节日。   也许BEA的红和成都的红是不一样的,但是他们结合在一起能够成为另外一种红,那就是激情。   期待来年的BEA dev2dev Days ,我们明年再聚!

发表在 Java | 评论关闭

项目组人员频繁变动

  上午去合作单位办事。   如果一个软件团队没有士气,我想效率还是会很低下的吧?最近软件组有一个人辞职走了。   事情是这样的,最先是A做的某业务,前段时间因为人员调整交给了B,B刚刚熟悉没多久就辞职了,现在交给了技术和业务都不熟的C……   我头都大了……

发表在 Java | 评论关闭

关于Hibernate的讨论

robbin: Hibernate是JDBC的轻量级封装,凡是用JDBC就会封装数据库操作,Hibernate就是个最好的封装框架。 一、Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合,例如Java应用程序的数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。从这个意义上来说,Hibernate和EB不是一个范畴的东西,也不存在非此即彼的关系。 二、Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的Java程序,和App Server没有任何关系,也不存在兼容性问题。 三、Hibernate不能用来直接和Entity Bean做对比,只有放在整个J2EE项目的框架中才能比较。并且即使是放在软件整体框架中来看,Hibernate也是做为JDBC的替代者出现的,而不是Entity Bean的替代者出现的,让我再列一次我已经列n次的框架结构: 传统的架构: 1) Session Bean Entity Bean DB 为了解决性能障碍的替代架构: 2) Session Bean DAO JDBC DB 使用Hibernate来提高上面架构的开发效率的架构: 3) Session Bean DAO Hibernate DB 就上面3个架构来分析: 1、内存消耗:采用JDBC的架构2无疑是最省内存的,Hibernate的架构3次之,EB的架构1最差。 2、运行效率:如果JDBC的代码写的非常优化,那么JDBC架构运行效率最高,但是实际项目中,这一点几乎做不到,这需要程序员非常精通JDBC,运用Batch语句,调整PreapredStatement的Batch Size和Fetch Size等参数,以及在必要的情况下采用结果集cache等等。而一般情况下程序员是做不到这一点的。因此Hibernate架构表现出最快的运行效率。EB的架构效率会差的很远。 3、开发效率:在有JBuilder的支持下以及简单的项目,EB架构开发效率最高,JDBC次之,Hibernate最差。但是在大的项目,特别是持久层关系映射很复杂的情况下,Hibernate效率高的惊人,JDBC次之,而EB架构很可能会失败。 4、分布式,安全检查,集群,负载均衡的支持 由于有SB做为Facade,3个架构没有区别。 四、EB和Hibernate学习难度在哪里? EB的难度在哪里?不在复杂的XML配置文件上,而在于EB运用稍微不慎,就有严重的性能障碍。所以难在你需要学习很多EJB设计模式来避开性能问题,需要学习App … 继续阅读

发表在 Java | 评论关闭

2003年度JavaWorld编辑选择奖

最佳Java数据存取工具奖 CocoBase Enterprise O/R 4.5, Thought Inc. Hibernate 1.2.4, hosted by SourceForge.net Oracle 9iAS TopLink, Oracle 最佳Java IDE Borland JBuilder 8.0, Borland Software Eclipse 2.1, Eclipse.org IntelliJ IDEA 3.0, JetBrains 最佳Java性能监视、测试工具 JProbe 5.0, Quest Software JUnit 3.8.1, JUnit.org Optimizeit Suite … 继续阅读

发表在 Java | 评论关闭

EJB3.0和吵闹的TSS年会

                彭晨阳    本月Java界最令人鼓舞的事,莫过于EJB 3.0雏形已定,2004年5月6日,EJB总设计师Linda DeMichiel在吵闹的TSS年会上(http://www.theserverside.com/symposium/)首次公布了EJB 3.0的重大改变。    EJB 3.0总体目标是易于开发。自从EJB 1.0出来后,曾经遭受了很多人的抨击,后来总算推出EJB 2.0,改正了以前不少问题,特别是性能问题,但是和.NET相关技术相比,EJB难于学习和使用已经成为EJB或J2EE发展壮大的致命危险。    在这个关键时刻,EJB标准委员会经过9个多月的努力,听取了各方面意见,特别吸取了开源领域的轻量编程模型思想,推出了EJB3.0新构想,EJB 3.0最主要有以下几个特点:    首先易于开发使用,目前的EJB对于程序员来说是重量的,因为程序员建立一个EJB需要很多步骤:建立几个接口文件和一个配置文件。 在EJB3.0中,建立一个Session bean将会非常简单,如下: @Session public class HelloWorldBean {    public void sayHello (String s) {       System.out.println(“Hello:”+s);    } }    其次,引入Dependency Injection 模式(一种新的Ioc模式,也是AOP基础模式)替代了JNDI的LookUp,这样使得在EJB容器外测试程序变得更加容易。 … 继续阅读

发表在 Java | 评论关闭

预知能力?

  很久以前就有这么一个感觉,就是觉得某个场景曾经经历过,甚至认为这个场景很熟悉之后,能够感觉应该怎么发展,结果就这么发展了。   高中做英语阅读的时候有一篇文章似乎提到过这种事情,可惜也没有结果。   最近的一件事情,和梦有关的。   大家都知道,Java1.2之后,基于商业目的都成为Java2,我有一天做梦,梦到大家谈论的都是Java5,那天去图书馆看《程序员》,说是JDK1.5出来了,要改为JDK5.0,我当时就觉得太……诡异了。也不知道Sun是否有打算改成Java5,呵呵,那以后就是J5EE了:)不过从J2SE5.0来看,Sun是没有这样的打算了;P   不过新的EJB3.0倒是给人感觉不错,偏向轻量的发展方向感觉挺好。

发表在 Java | 评论关闭

山雀与知更鸟

  这篇文章的标题中的“知更鸟”吸引了我的眼球,但是这文章的内容却更让人深思。 【故事】 20世纪初,英国的乡村有一套牛奶配送系统,将牛奶送到顾客门口。由于牛奶瓶没有盖子,山雀与知更鸟常常毫不费力,便在顾客开门收取牛奶前,先一步享用。后来,随着厂商加装了铝制的瓶盖,山雀与知更鸟便不再拥有这“免费早餐”。 但到了50年代初期,当地的所有山雀(约100万只)居然都学会了刺穿铝制瓶盖,重开“免费早餐”的大门。反观知更鸟,却只有少数学会,始终没有扩散到其余的大多数。 很明显,山雀经历了组织学习的过程,藉由个体的创新技能,传送给群体成员,成功增加了族群对环境的适应力。但问题是,为什么山雀可以,而知更鸟却不能呢?生物学家发现,山雀在年幼时期,就已习惯和同类和平相处,甚至编队飞行。而知更鸟则是排他性较强的鸟类,势力范围内是不允许其他雄鸟进入,同类之间基本上是以敌对的方式沟通。因此,虽然两者同属鸟类,但和谐相处的山雀,比起互相敌视的知更鸟,更能学习互助,进化程度更高。 【管理启示】 在一个群体之内,如果内部竞争太激烈,成员之间互相争位敌视,是难以发展成一个学习型组织。要成为学习型组织,先决条件是必须有和谐的内部气氛,组织内的成员才能互相分享知识。有些企业的管理人误以为内部竞争越强越好,甚至刻意制造很强的竞争文化,自以为这是高明的管理手段,殊不知只是在带领企业步知更鸟的后尘! 【成片的大树点评】 1、 在事关生存的事情上,团结是最好的致胜法宝。 2、 经常交流会提高团队的整体水平,每个人的技术点并不相同,通过交流可以更加丰富大家的知识,增强团队的力量。 来源:成长的大树,其中的【管理故事】蛮好的。 http://blog.csdn.net/lxf428/archive/2004/09/14/103907.aspx

发表在 Java | 评论关闭