日系

dapeng 2012主题

dapeng 2012主题的主题的模仿的腾讯CDC的主题,主题的特点是精简,比起上一个主题,没有太多的css、js、页面效果,主要是为了增加页面的速度。另外一个也是为了在2012年也有一个自己的风格主题。也就是目前自己使用的这款主题,里面很多的都是代码实现的,也是整理自己接触Wordpress,熟悉的一些函数。分页、首页图片、相关文章、分类目录等都重写了代码,加入的注释。图片演示效果:最近访问网站的速度也有些慢,自己用的外链图片也很难访问,为了速度加快一些,使用了cloudflare提供的CDN服务。使用CDN服务后的效果对比:我用的是使用的服务器地址是:174.37.169.153,效果肯定比不上国内,但也比起超时要好的多。另外之前一直使用的wp spuer cache也没有生效,今天也捣腾的可以用了。使用Firebug测试了下首次打开速度,也基本保持在3s左右,可能网络好,满足下虚荣感。主题基本就定下来了,下一步就是做一些SEO的事情了,不过,我的观点是回归自己建立博客的本质。博客首先是记录收集的地方,分享也就是附带的目的吧!如果仅仅是记录收集,用记事本还不简单啊!

J2EE系统的概念及如何开发

文章比较老,不过也把Java开发的常用的方式、方向也说明了。J2EE开发三件宝: Domain Model(域建模)、patterns(模式)和framework(框架)。J2EE系统的概念及如何开发J2EE学习者越来越多,J2EE本身技术不断在发展,涌现出各种概念,本文章试图从一种容易理解的角度对这些概念向初学者进行解释,以便掌握学习J2EE学习方向。首先我们需要知道Java和J2EE是两个不同概念,Java不只是指一种语言,已经代表与微软不同的另外一个巨大阵营,所以Java有时是指一种软件系统的流派,当然目前主要是.NET和Java两大主流体系。J2EE可以说指Java在数据库信息系统上实现,数据库信息系统从早期的dBase、到Delphi/VB等C/S结构,发展到B/S(Browser浏览器/Server服务器)结构,而J2EE主要是指B/S结构的实现。J2EE又是一种框架和标准,框架类似API、库的概念,但是要超出它们。如果需要详细了解框架,可先从设计模式开始学习。J2EE是一个虚的大的概念,J2EE标准主要有三种子技术标准:WEB技术、EJB技术和JMS,谈到J2EE应该说最终要落实到这三个子概念上。这三种技术的每个技术在应用时都涉及两个部分:容器部分和应用部分,Web容器也是指Jsp/Servlet容器,你如果要开发一个Web应用,无论是编译或运行,都必须要有Jsp/Servlet库或API支持(除了JDK/J2SE以外)。Web技术中除了Jsp/Servlet技术外,还需要JavaBeans或Java Class实现一些功能或者包装携带数据,所以Web技术最初裸体简称为Jsp/Servlet+JavaBeans系统。谈到JavaBeans技术,就涉及到组件构件技术(component),这是Java的核心基础部分,很多软件设计概念(设计模式)都是通过JavaBeans实现的。JavaBeans不属于J2EE概念范畴中,如果一个JavaBeans对象被Web技术(也就是Jsp/Servlet)调用,那么JavaBeans就运行在J2EE的Web容器中;如果它被EJB调用,它就运行在EJB容器中。EJB(企业JavaBeans)是普通JavaBeans的一种提升和规范,因为企业信息系统开发中需要一个可伸缩的性能和事务、安全机制,这样能保证企业系统平滑发展,而不是发展到一种规模重新更换一套软件系统。至此,JavaBeans组件发展到EJB后,并不是说以前的那种JavaBeans形式就消失了,这就自然形成了两种JavaBeans技术:EJB和POJO,POJO完全不同于EJB概念,指的是普通JavaBeans,而且这个JavaBeans不依附某种框架,或者干脆可以说:这个JavaBeans是你为这个应用程序单独开发创建的。J2EE应用系统开发工具有很多:如JBuilder、Eclipse等,这些IDE首先是Java开发工具,也就是说,它们首要基本功能是可以开发出JavaBeans或Java class,但是如果要开发出J2EE系统,就要落实到要么是Web技术或EJB技术,那么就有可能要一些专门模块功能(如eclipse需要lomboz插件),最重要的是,因为J2EE系统区分为容器和应用两个部分,所以,在任何开发工具中开发J2EE都需要指定J2EE容器。J2EE容器分为WEB容器和EJB容器,Tomcat/Resin是Web容器;JBoss是EJB容器+Web容器等,其中Web容器直接使用Tomcat实现的。所以你开发的Web应用程序可以在上面两种容器运行,而你开发的Web+EJB应用则只可以在JBoss服务器上运行,商业产品Websphere/Weblogic等和JBoss属于同一种性质。J2EE容器也称为J2EE服务器,大部分时它们概念是一致的。如果你的J2EE应用系统的数据库连接是通过JNDI获得,也就是说是从容器中获得,那么你的J2EE应用系统基本与数据库无关,如果你在你的J2EE应用系统耦合了数据库JDBC驱动的配置,那么你的J2EE应用系统就有数据库概念色彩,作为一个成熟需要推广的J2EE应用系统,不推荐和具体数据库耦合,当然这其中如何保证J2EE应用系统运行性能又是体现你的设计水平了。衡量J2EE应用系统设计开发水平高低的标准就是:解耦性;你的应用系统各个功能是否能够彻底脱离?是否不相互依赖,也只有这样,才能体现可维护性、可拓展性的软件设计目标。为了达到这个目的,诞生各种框架概念,J2EE框架标准将一个系统划分为WEB和EJB主要部分,当然我们有时不是以这个具体技术区分,而是从设计上抽象为表现层、服务层和持久层,这三个层次从一个高度将J2EE分离开来,实现解耦目的。因此,我们实际编程中,也要将自己的功能向这三个层次上靠,做到大方向清楚,泾渭分明,但是没有技术上约束限制要做到这点是很不容易的,因此我们还是必须借助J2EE具体技术来实现,这时,你可以使用EJB规范实现服务层和持久层,Web技术实现表现层;EJB为什么能将服务层从Jsp/Servlet手中分离出来,因为它对JavaBeans编码有强制的约束,现在有一种对JavaBeans弱约束,使用Ioc模式实现的(当然EJB 3.0也采取这种方式),在Ioc模式诞生前,一般都是通过工厂模式来对JavaBeans约束,形成一个服务层,这也是是Jive这样开源论坛设计原理之一。由此,将服务层从表现层中分离出来目前有两种可选架构选择:管理普通JavaBeans(POJO)框架(如Spring、JdonFramework)以及管理EJB的EJB框架,因为EJB不只是框架,还是标准,而标准可以扩展发展,所以,这两种区别将来是可能模糊,被纳入同一个标准了。 但是,个人认为:标准制定是为某个目的服务的,总要牺牲一些换取另外一些,所以,这两种架构会长时间并存。这两种架构分歧也曾经诞生一个新名词:完全POJO的系统也称为轻量级系统(lightweight),其实这个名词本身就没有一个严格定义,更多是一个吸引人的招牌,轻量是指容易学习容易使用吗?按照这个定义,其实轻量Spring等系统并不容易学习;而且EJB 3.0(依然叫EJB)以后的系统是否可称为轻量级了呢?前面谈了服务层框架,使用服务层框架可以将JavaBeans从Jsp/Servlet中分离出来,而使用表现层框架则可以将Jsp中剩余的JavaBeans完全分离,这部分JavaBeans主要负责显示相关,一般是通过标签库(taglib)实现,不同框架有不同自己的标签库,Struts是应用比较广泛的一种表现层框架。这样,表现层和服务层的分离是通过两种框架达到目的,剩余的就是持久层框架了,通过持久层的框架将数据库存储从服务层中分离出来是其目的,持久层框架有两种方向:直接自己编写JDBC等SQL语句(如iBatis);使用O/R Mapping技术实现的Hibernate和JDO技术;当然还有EJB中的实体Bean技术。持久层框架目前呈现百花齐放,各有优缺点的现状,所以正如表现层框架一样,目前没有一个框架被指定为标准框架,当然,表现层框架现在又出来了一个JSF,它代表的页面组件概念是一个新的发展方向,但是复杂的实现让人有些忘而却步。在所有这些J2EE技术中,虽然SUN公司发挥了很大的作用,不过总体来说:网络上有这样一个评价:SUN的理论天下无敌;SUN的产品用起来撞墙;对于初学者,特别是那些试图通过或已经通过SUN认证的初学者,赶快摆脱SUN的阴影,立即开溜,使用开源领域的产品来实现自己的应用系统。最后,你的J2EE应用系统如果采取上面提到的表现层、服务层和持久层的框架实现,基本你也可以在无需深刻掌握设计模式的情况下开发出一个高质量的应用系统了。还要注意的是: 开发出一个高质量的J2EE系统还需要正确的业务需求理解,那么域建模提供了一种比较切实可行的正确理解业务需求的方法,相关详细知识可从UML角度结合理解。当然,如果你想设计自己的行业框架,那么第一步从设计模式开始吧,因为设计模式提供你一个实现JavaBeans或类之间解耦参考实现方法,当你学会了系统基本单元JavaBean或类之间解耦时,那么系统模块之间的解耦你就可能掌握,进而你就可以实现行业框架的提炼了,这又是另外一个发展方向了。以上理念可以总结为一句话:J2EE开发三件宝: Domain Model(域建模)、patterns(模式)和framework(框架)。原文网址:http://www.javaresearch.org/article/31774.htm

oracle的层次树形结构的查询

在数据库父子关系的模型中,经常会需要将数据表现为树形,带层次结构的表现,就可以采用connect by prior start with来实现了。代码 1:  2: *******************************************************************************/  3:  4: --创建测试表,增加测试数据  5:  6:createtable dapeng_test(superid varchar2(20),id varchar2(20));  7:  8: insert into dapeng_test values('0','1');  9: insert into dapeng_test values('0','2');  10:  11: insert into dapeng_test values('1','11');  12: insert into dapeng_test values('1','12');  13:  14: insert into dapeng_test values('2','21');  15: insert into dapeng_test values('2','22');  16:  17: insert into dapeng_test values('11','111');  18: insert into dapeng_test values('11','112');  19:  20: insert into dapeng_test values('12','121');  21: insert into dapeng_test values('12','122');  22:  23: insert into dapeng_test values('21','211');  24: insert into dapeng_test values('21','212');  25:  26: insert into dapeng_test values('22','221');  27: insert into dapeng_test values('22','222');  28:  29:commit;  30:  31: --层次查询示例  32:selectlevel||'层',lpad(' ',level*5)||id id  33:from dapeng_test  34:startwith superid = '0'connectbyprior id=superid; 结果

jsp页面遍历List

jsp页面遍历List<c:forEach var="person" items="${personList}" varStatus="status">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;index:${status.index}&nbsp;&nbsp;name:${person.name} <br /></c:forEach>

选择的方向

看到一篇关于选择编程未来的方向的文章,讲的还有些内容,进入软件这一行业,起初选择一门语言是很重要,也是关系着以后的发展的方向,可语言真就是那么重要吗?在这个行业待的久的人,肯定会说,是未必吧!一门语言的出现,总有他的存在的价值、发展的目的和适用的范围,经典、适用于市场的语言才会留下来,就比如最近eclipse推出的新语言Xtend,是以己之长补 Java 之短,精简代码,无类型,改进可读和维护,我没有深入研究过,我就是有些可笑,这门语言仅仅是补充了Java之短,但是市场有没有带来什么利益呢?没有市场的驱动,能存活多久。再说Java和C#,Java号称垮平台,难道C#就不行吗?Java的跨平台,了解的肯定知道,Java是运行在自己的Jvm中的,并不是运行在自有的系统平台的,而C#依靠自有的系统平台,如果C#加入类似Java的一个中间层,难道就不能跨平台吗?况且现在,已经有C#跨平台的实现了。编程未来的方向,如果未来仅仅就是做编程,仅仅就是写代码,做一个码农机器人,也仅仅在一门语言上面发展,ok,那么要么就是个真正的码农机器人,或者去研究院,做一个这门语言的语言专家,再说,语言专家也要很了解其他语言的。选择未来的编程方向,不能说什么选对了,什么选错了,这么问,明显是误导人的。选择的结果,只要适合和不适合,就比如我们做开发,有的技术适用于目前的环境,可就不一定适应于其他的环境。选择一门自己入手的,或者感兴趣,钻研熟练的掌握他,这个自己的本钱,也是有能力学习其他知识的课本,根据市场和实际情况的需要,学习掌握需要的知识。多说一句,未来的事情,谁说的清呢?原文网址:http://blog.csdn.net/lin_lujian/article/details/6941633编程未来的方向,你选什么,你选对了吗?为什么会有Java,为什么会有.NET? 有人说,Java是为了跨Windows和UNIX而产生的。是这样吗?Sun有?自己的操作系统solaris,并且打的是高端市场,而Java发展早期阶段,? Windows还主要定位在中小型企业,并没有打算与Sun一争高端客户。?而且Sun的用户大部分都是大型企业级,而Windows定位在家庭消费? 用户,由于Windows已经成为桌面OS的事实标准,Sun根本无意抢夺? Windows的地盘,而且Sun有自己的操作系统,扩大自己产品销售才是? 第一。但是UNIX一直是个混乱的世界,各种UNIX版本在并存,你为这种? UNIX开发的应用,却很难在另一种UNIX上跑通.应用的阻塞影响了UNIX? 市场需求的扩大,就象没有SQL Server,没有OFFICE,没有Windows 游戏,? 和Windows上的开发工具,就算你的操作系统做的再漂亮再容易我们也会扔掉Windows.为什么?因为没用,我买回来一个大铁家伙,我什么也做不了.Sun就出于这种考虑,所以才有VM的想法,否则谁傻了, 做个又慢又麻烦的VM.所以说Java的产生,只是为了跨UNIX平台.当然能跨 Windows,吃定Windows,那岂不是更好,呵呵呵,Sun为自己的妙招而没事偷着乐那为什么会有.NET呢?可是Windows就一个呀,它也要跨平台?而且微软已经把CLI提交给标准委员会,看来是真要跨了?真的吗?从外表来看,Windows确实是一个.但是从技术角度看,Windows3,? Windows95,Windows2000是截然不同的三种架构.在中国,大家对新技术的追求比较热衷,所以说一个企业中这三种操作系统并存互连的可能性不怎么大.但是老外是精打细算,不见兔子不撒鹰,所以你在国外企业运行很老的系统也不要见怪.微软为了同时维护这几种操作系统也是煞费苦心,而且由于技术是各个时期形成的,有的技术由于历史发展原因有明显的缺陷,也无能为力修改了,而且为了功能更强大,API海洋,DLL黑洞,ACTIVEX,OLE,COM,DCOM,COM+,各种技术交叉,唉,其中苦谁了解所以跨WINDWOS平台是微软制造.NET的一个原因,这样给你一个抽象的统一的平台后把你摆平后,他再着手修改他的底层,省得一天人们叫着 Windows不安全,Windows不稳定.当然从J2EE的火热场面来看,拉去了很大一批Windows平台上的C++程序员.失去了应用开发的源头,那还有什么发展?如何拉回这批程序员让他们继续为Windows开发当然也是.NET的原因之一,这就是为什么.NET从架构到开发语言都与Java 极其相似的原因,就是吸引你平滑的再回到微软的世界中,如果跨度大了,程序员就有了迟疑.唉,如果没有Java,如今的C#也不会是如今这样,原本它会更好,我想ANDERS一定心中很郁闷,但是商业是不以个人意志为转移的.而且现在已经不是桌面为王的时代了,现在是互连网的时代,Java是第一个有强大开发WEB应用的完整体系,而当时微软的技术还是七拼八凑,只是互连网一下到来微软刚醒过神来仓促应战的结果,当然无法与J2EE媲美.想在互连网时代也分一杯羹,必须也有一个完整的体系,于是.NET就产生了我们已经有了Web Service,我们还需要.NET吗其实技术发展到如今的应用集成时代,用户的需求就是把现在各种平台上的应用集成起来.集成的方法有很多种,当然跨平台也是一种.不过最省力的还算是WEB SERVICE.因为现在已经是组件应用的天下.各种COM,EJB,CORBA成为快速组装企业应用的主流技术.组件是位于操作系统,数据库,网络之上的技术,站在组件的层面上,下面用什么技术已经无所谓了,因为已经被组件屏蔽了.如果我们能把我们的组件互连起来,不也可以集成吗?应该怎么做?这几项技术都分属于不同公司,想联合真不大容易.这时就要找到每个体系公共的东西,用公共的东西把他们连在一起不就行了.找呀找,终于发现,是TCP/IP.随即几大公司都发现了突破口,需要快速占领先机.由于Sun一直在Java发展的问题上给了IBM很大的阻塞,所以IBM宁愿先和微软联合做,如果微软有什么不轨之心,就放出Sun,让他们互相咬,然后在适当的时机出来装出老大的样子摆平他们,给他们俩制定一个适合自己发展的竞争协议.我们已经可以互连了,我们干吗要.NET.我们的问题已经解决了,我干吗花钱再投资呢?经济本来已经很不景气了.但是,但是,就是这该死的但是…微软看来已经决定不在现有基础上增强ASP和COM+了,现在是互连时代,也是组件时代,两大要命的地方我都不升级了,你自己看着办,我可没逼着你买和Java 在中国哪个更有前途这个问题好象已经不用再争了.中国90%的用户是Windows用户,保护现有投资,使用很习惯很易用不用重新学习,我又不用跨平台,我干吗要换Java 呢.过去是微软没有提供很强大的WEB开发解决方案,现在提供了,我干吗要用Java.而且. Net比Java出的迟,肯定会吸收Java的优点,弥补Java的缺点.而且微软的VM肯定和Windows结合的很好,性能不用担心.我干吗用 Java?而且微软显然把宝已经压到了.NET上,你难道还要在? .NET的VM上再加一层Java的VM?.NET有什么新的亮点?当然是 ASP,ADO和COM+,还有清晰的架构,并且由于统一的类库,WEB,GUI,MOBILE而开发的应用会很容易的转来转去,不象过去开发,各需要学习不同的知识.ASP终于结束了网页意大利面条式的程序,面向对象和支持多种语言,使构筑强大复杂的WEB应用提供了比JSP更凶猛的功能,让人不得不爱.ADO.NET也抛弃了过去的数据集一Scroll就连数据库进行提交的糟糕速度,代而取之的是多条修改可以一次性提交上去.这样性能会提高很多.COM+呢?COM+1.5的特性大家在WINXP上也看见了,比1.0强了很多,未来还不用注册, COPY完就能用,多舒服.至于安全嘛,稳定嘛,这话不敢讲.因为盗亦有道,Java也同样如此,无法说谁比谁好真的会跨平台吗微软的命根子是操作系统,微软此次出.NET也是为了打入高端市场.怎么打入?微软第一已经在用C#收买 Java程序员了,并且做Java和C#的映射工具,先断了Java应用的前途,后面用CLI提交给标准委员会,让别人开发UNIX上的平台,微软不在正面和UNIX阵营冲突,以免犯众怒.当UNIX和Windows的CLI都有了时候,基于CLI的应用可就两个系统都能用了,这会帮助微软销售多少其他产品呀.这不,微软在支持着好几个Open Source社团在开发UNIX的CLI.跨平台的事微软不会轻易干的,否则微软的命根子怎么办真的支持多种语言吗开发更多的基于.NET的应用,让.NET快速成长起来.第二.NET是一次比较大的革新,广大的各类程序员能否跟的上也是个问题.多语言的支持当然会,但是不会支持的很好,否则微软大力做C#干吗呀,如果别的语言和C#一样好,那微软还混什么混呀.最糟糕了,也要其他语言的技术比C#慢半拍.不过先走也未必领先,就象DELPHI就后来居上,这么大的市场,微软是不可能通吃的我们需要转到.NET上吗你可以不转.就看你需要不需要INTERNET了.我想在未来,没有企业会说INTERNET对我没有一点作用.现有应用能否平滑过渡呢?在这个问题上可以看一下微软的历史.微软在做完WINNT4的时候其实已经在策划现在的WIN2000,但是为什么在WIN95后有WIN98,WINME,WINXP, 不是他当时做不了那样的技术,而是必须引导着客户一步步走,要追随客户,走的太快,就会丢失客户.在这个重大的转折点,微软也会如此.而且在现在的 Windows.NET上,你运行现在的程序一样没问题,速度依旧,操作方式也依旧,因为他使用了两种手段来区别对待这两种应用程序什么时候转如果你需要抢占市场先机,现在转正好,因为能支持ASP.NET,ADO.NET开发的VSS.NET已经推出快一年了,就是有能力欠缺的问题,第二版的出来也不会太晚了.不过话在前头,确实在实际的开发中,Vss.NET确实有些做不了的事情,不要看他好象什么都有,这就跟微软当年宣布 COM有池化的功能一样,仅有一个外壳.这是微软的策略,跟不跟着走,你自己看.稳健型的公司建议在第二版出来后应用,因为微软的产品一向在第三版才会好用作为开发商,跟随.NET的难点是什么难点难就在,过去我们的开发方式,拖一些控件,连个数据库,更新或SELECT一些数据.再深一些就是消息,或者是一些不常用的API.记住:.NET是微软进攻高端市场的第一步,现在的微软不是我们过去熟悉的微软,Vss.NET的一推出,就是强烈给人一种这样的感受:从建模到开发到测试到发布,全套企业级的工具都无缝相接,而且处处体现着OO和设计模式,在宣传中也频繁提到,昭示着这个工具是为大型应用开发而定制的.所以宝刀也需有能力的人才能拿的动,否则只能砸了自己的脚.对于现在的Java开发工具也是如此,好象全世界一下都没有了小型企业一样.我们是否具备了优秀的设计师,建模师,OOP的程序员,我们是否有一整套流畅的开发流程来支持全程建模,我们都需要深思.在微软的.NET的各种培训上,培训师也是反复强调分析设计,大型项目管理,自动化工具的支持,你做好准备了吗题外话:Sun在微软拆分问题上输了吗微软的案子打了这么多年,居然庭外和解.Sun确实挺郁闷.不过Sun并没有输.为什么这么说呢?依毛主席的话说就是:敌进我退,敌疲我扰.确实微软在. NET的发展上受了很多牵绊,否则也不会到如今才推出来个框架.在硅谷,时间就是机会,时间就是金钱,谁前进的快谁就能占先机,显然Sun并不是最痛苦的一个的未来依Windows的用户量和微软进攻高端企业应用的决只是呆板的图形,不能全方位的表现网络的传输技术,使应用进步更加依赖硬件而不是软件,微软亚洲研究院为什么在做哪些研究,就是因为他们不断在思考未来是什么,所以每一次技术的浪潮他们总在浪头.当然未来还会有所改变,但是他们会及时调整他们的战略,但大方向不会错到哪去!当技术不再是阻碍应用发展的主要因素,比如宽带的来临,这时候你想过没有,在它上面,该做些什么呢?世界有多大,你能看多远?为什么在每次浪潮到来时你都无法预想到,而感叹这世界变化如此之快我对微软的发展的一些看法:微软把.NET扩展到高端市场和移动设备市场,为.NET开发的程序可以在基于.NET的任何设备上都可以运行,大家不需要为不同的设备用不同的工具开发应用,应用极大的推动了基础软件的扩大,就象OFFICE,SQL Server辅助扩大了Windows的销售一样.未来的XBOX也会变成.NET平台,成为家庭连网的安全网关和交易网关和信息网关,如果你觉得微软进入游戏业就是为了眼馋游戏这块利润,那你就大错特错了,这个皮毛根本不值得微软大动这么财力.PDA 和手机也和机顶盒一样嵌入.NET,你打开电视,你打电话,你玩游戏,你工作,你上网,你甚至打开冰箱,你都不会知道在背后支撑的是.NET,从高端服务器到你的手机,全部是微软的软件这是一个伟大的设想,如果微软能够兢兢业业的走,凭这样的财力人力和管理和经营战略,走10年,实现的可能性非常大,这不是以个人意志为转移的,你说他倒他就会倒吗?如果会成功,当然微软会成为人类历史上最伟大的公司,赚取的财富已经不能再提,最关键的问题是:我们全人类的生活和工作被一个私人的商业公司所控制着.只是到那个恐怖的地步,你是否有勇气和能力把他拆分.因为他足以触及到你的生活和工作,社会的经济,政治活动, 甚至军事,任何的动作都足以引起社会的大地震.你认为他有什么理由完不成这些梦想吗

大话版MTV光棍很酷

千年神棍日,指日可待,看看大话版的光棍很酷,光棍们一起努力,尽早的结束光棍的日子哈!昨晚给后院新增了一个页面加载的效果,更换了背景图片,虽然牺牲了一些速度,效果还是很不错的啊!

MyEclipse 10 下载-补充破解补丁

  刚刚发布了MyEclipse 10,我现在用的还是6.5的版本,6.5的版本是我觉得最好用的一个版本。  我装上了,还没感受到有哪些好用,就是感觉体积庞大,和IBM 的WID一样,是个多面手,啥事都能干,其实经常能使用的也就其中那么几个功能,要是能像插件一样,即插即用就好了。  MyEclipse 10使用最高级的桌面和Web开发技术,包括 HTML5 和 Java EE 6,支持 JPA 2.0、JSF 2.0 、Eclipselink 2.1 以及 OpenJPA 2.0.  而对 IBM WebSphere 用户来说,MyEclipse Blue 支持最新版本的 WebSphere Portal Server 7.0、WebSphere 8 以及以前的版本,无缝的支持 IBM DB2 数据库  MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse几乎囊括了目前所有主流开元产品的专属eclipse开发工 具。  下载 MyEclipse 10 试用版:  http://www.myeclipseide.com/module-htmlpages-display-pid-4.html  MyEclipse 10 发行说明:  http://www.myeclipseide.com/Article106.html  这两个地址是给出来了,可国内就是不能访问,原因你懂得,白搭。还是直接用迅雷来下载吧!  这个是普通版本的下载:  http://downloads.myeclipseide.com/downloads/products/eworkbench/indigo/installers/myeclipse-10.0-offline-installer-windows.exe  这个是blue版的下载:  http://downloads.myeclipseide.com/downloads/products/eworkbench/indigo/installers/myeclipse-blue-10.0-offline-installer-windows.exe  我给出一个普通版国内网盘的下载。  2011-11-05添加破解补丁,补丁用的是破解myeclipse9.1的,我试用过,myeclipse10也可以正常破解的。  下载地址:MyEclipse10普通版本 |Myeclipse10破解补丁

小步接着走

这两天把收藏了好久的文章,还有收藏夹中的链接做了整理。现在我的做法是文章的收藏一般都会放到麦库里面,我麦库的公开地址是http://note.sdo.com/u/dapeng&nbsp;现在公开地址的访问还有些问题,访问子栏目需要输入密码,可我没有设置密码,麦库的客服说只能到下一周解决了,等待解决吧!另外是对一些链接的管理办法是,建立收藏网站,使用新浪的SEA提供的typecho搭建了收藏的网站http://zptools.sinaapp.com&nbsp;收藏网站是模仿阅微草堂的想法建的,部分的链接也是来源那里的。使用新浪的SEA来搭建是为了服务器的稳定,毕竟我自己的用的服务器在国外,说不定哪天给和谐了,不放心啊!在做网站收藏整理的时候,发现国内优秀的JAVA网站没多少,网站的收藏还需要继续的更新整理,才能符合自己的需要。方向是java相关、企业服务SOA、数据库、linux、前端设计、项目管理、互联网等等吧!&nbsp;选择了一款比较简单的主题,对主题也做了修改,主要是增加css3的使用,使用了css3的圆角、还有阴影。在chrome、ie9、opera、firefox5测试都通过了,很可惜firefox3没有通过,当然ie6是不会通过了。还增加使用了一个jquery的插件scrolltotop,当页面向下滚动的时候,就会出现返回上面标记。修改好了,也就把博客主题也替换一样了,统一风格吧!现在瞧瞧两个站点吧!http://zptools.sinaapp.com&nbsp;http://dapeng.me&nbsp;

Java程序员成长之路(程序员不良的行为习惯)

Android IT:分享一些程序员个人修养的行为表现,希望程序员们能够引以为戒,更快的成长!1) 情绪化的思维如果你开始使用不同颜色的眼光来看待这个世界的话,那么你可能会成为一个很糟糕的程序员。情绪化的思维或态度很有可能会把自己变成一个怪物。相信你 经常可以看到很多很糟糕的程序会使用下面的这些语句:我的程序不可能有这种问题。Java就是shit。我最恨的就是使用UML做设计。需求怎么老在变,没办干了。受不了这些人,他们到底懂不懂啊。这些带着情绪化的思维和态度,不但可以让你成为一个很糟糕的程序员,甚至可以影响你的前途。因为,情绪化通常都是魔鬼,会让你做出错误的判断和决定,错误 码率的判断和决定直接决定了你的人生。2) 怀疑别人糟糕的程序总是说:“我的代码一定是正确的,我怀疑编译器有问题”,“我这应该没有问题吧,STL库怎么这么难用啊”。我曾经见过有程序员这样使用 STL类:map,当他发现这样放入字符串后却取不出来,觉得那是STL库的BUG,然后自己写了一个map!我的天啊!某些时候,过早的下结论是一个很不好的习惯,任何事情都有其原因,只有知道了原因,你才能知道是谁的问题。一般来说,总是自己出的问题。3) 过多关注实现,陷入问题细节有些时候,当我们面对一个问题或是一个需求的时候,糟糕的程序员总是会马上去找一个解决方案或是实现,这是一个很不好的习惯。设计模式告诉我们, “喜欢接口,而不是实现”就是告诉我们,认清问题的本质和特性要比如何实现更重要。对于一个客户的问题来说,首先应该想到的是如何先让用户正常工作,如何恢复正在“流血”的系统,而不是把用户放在一边而去分析问题的原因和解决方 案。对于解决一个bug来说,重现bug,了解原来程序的意图是首先重要的事,而不是马上去修改代码,否则必然会引入更多的BUG。对于一个需求来说,我们需要了解的需求后面的商业背景,usecase和真实意图,而不是去讨论如何实现。只有了解了用户的真实意图,实际使用的方式和案例,你才能真正如果去做设计。糟糕的程序总是容易陷入细节,争论于如何实现和实现难题,以及问题的根本原因,而忽略了比这些更重要的东西。只有看懂了整个地图,我们才知道要怎么去走。4) 使用并不熟悉的代码糟糕的程序员最好的朋友是 Ctrl-C 和 Ctrl-V,有些时候,他们并不知道代码的确切含义,就开始使用它,有证据表明,由拷贝粘贴引发的bug占了绝大多数。因为,代码总是只能在特定的环境下才能正常地 工作,如果代码的上下文改变了,很有可能使得代码产生很多你不知道的行为,当你连代码都控制不住了,你还能编出什么好的程序呢?5) 拼命工作而不是聪明的工作对于糟糕的程序员,我们总是能看到他们拼命地修正他们的bug,总是花非常多时间并重复地完成某一工作。而好的程序可能会花双倍的时间来准备一个有 效的开发环境,工具,以及在开发的时候花双倍甚至10倍的时间来避免一些错误。好的程序员总是会利用一切工具或手段来让自己的工作变得更有效率,总是为在 开发的时候尽可能得不出错。后期出错的成本将会是巨大的,而且那时改正错误的压力也是巨大的。所以,糟糕的程序通常会让自己进入一种恶性循环,他们看上去 总是疲惫的,总是很辛苦的,所以更没有时间来改善,越没有时间来改善,就有越多的问题。所以,拼命工作有些时候可能表明你不是一个好的程序员。6) 总是在等待、找借口以及抱怨当需求不明确的时候,当环境不是很满意的时候,他们总是在等待别人的改善。出现问题的时候,总是在找借口,或是抱怨这也不好,那也不好,所以自己当 然就没有做好。糟糕的程序员总是希望自己的所处的环境是最好的,有明确的需求,有非常不错的开发环境,有足够的时间,有不错的QA,还有很强的teamleader,以及体贴自己的经理,有足够的培训,有良好的讨论,有别人强有力的支持……,这是一种“饭来张口,衣来伸手”的态度,这个世界本来就不完 美,一个团队需要所有人去奋斗,况且,如果什么都变得完美了,那么,你的价值何在吗?driving instead of waiting,leading instead of following.7) 滋生办公室政治有句话叫“丑女多作怪”,意思是说如果一个自己没有真实的能力的话,那么他一定会在其它方面作文章。糟糕的程序员也是这样,如果他们程序编不好的 话,比不过别人的话,他们通常会去靠指责别人,推脱责任,或是排挤有能力的人,等等不正常的手段来保全自己。所以,糟糕的程序通常伴随着办公室政治。8 ) 说得多做得少糟糕的程序员总是觉得自己什么都懂,他们并不会觉得自己的认识和知识都是有限的。这就是所谓的夸夸其谈,是的,什么都做不好的程序员能靠什么混日子 呢?就是吹啊吹啊。另一个表现方式是他们在评论起别人的程序或是设计,总是能挑出一堆毛病,但自己的程序写得也很烂。总是批评抱怨,而没有任何有建设性的意见,或是提 出可行的解决方案。这些糟糕的程序员,总是喜欢以批评别人的程序而达到显示自己的优秀。9) 顽固当你给出一打证据说明那里有一个更好的方案,那里有一个更好的方向的时候,他们总是会倔强的认为他们自己的做法才是最好的。一个我亲身经历的事例就 是,当我看到一个新来的程序员在解决一个问题的时候走到了错误的方向上时,我提醒他,你可能走错了,应该是另外那边,并且我证明了给他看还有一个更为简单 的方法,有。然而,这位程序员却告诉我,“那是我的方法,我一定要把之走下去,不然我会非常难受”,于是,在三天后的代码评审中,在经过顽固地解释以及一 片质疑声中,他不得不采用了我最先告诉他的那个方法。这些程序员,从来不会去想,也不会去找人讨论还有没有更好的方法,而是坚持自己的想法,那怕是条死路都一往直前,不撞南墙永不回头。10) 写“聪明”的代码他们写出来的代码需要别的同事查看程序语言参考手册,或是其程序的逻辑或是风格看上去相当时髦,但却非常难读。代码本应该简洁和易读,而他们喜欢在 代码中表现自己,并尝试另类的东西,以显示自己的才气。是的,只有能力有问题的程序员才需要借助这样的显示。记得以前的一个经历,一位英语很不错的程序员加入公司,本来对我们这些英语二把刀来说,我们喜欢看到的是简单和易读的英文文档,然后,那位老兄为了 展示他的英语如何牛,使用了很多GRE中比较生僻的短语和词汇。让大家阅读得很艰苦。最有讽刺意味的是,有一位native的美国人后来在其邮件中询问他 某个单词的意思。呵呵。

清凉一夏,换个皮肤

夏天到了,换个清凉点的皮肤。做了些修改,每次进页面都会随机换背景。简单的js使用而已。页面背景比较大,网速慢的话,加载就慢了,为了些效果,扔了。http://dapeng.me&nbsp;增加了两个插件的使用一个是归档日志,可以按照时间来看的。另外一个增加了wap版的,虽然基本没人访问,还是加上了。