posted @
2009-10-25 18:49 布衣郎 阅读(1857) |
评论 (2) |
编辑 收藏
摘要: osgi一个最大的特色就是使用不同的ClassLoader,让多个bundle共享一个虚拟机,而每一个bundle使用单独的ClassLoader。
阅读全文
posted @
2009-02-17 16:49 布衣郎 阅读(3869) |
评论 (0) |
编辑 收藏
摘要: 前面通过一个例子简单的介绍了如何快速的开发一个osgi应用。下面来具体说明一下什么是osgi,以及osgi 能做什么,为什么使用osgi,以及到底osgi能带来什么益处。
阅读全文
posted @
2009-02-14 16:28 布衣郎 阅读(3434) |
评论 (1) |
编辑 收藏
摘要: 接触了osgi也这么久了,其中也走了不少的弯路。为了更好的推广osgi,并避免新手能少走一些弯路,接下来的几篇文章,我会通过几个简单的实例,来介绍一下如何快速的掌握osgi。其实,网上有不少好的文章推荐,顺便也可以比较一下。BlueDavy的osgi 实战是值得推荐的,当初也是看了之后,少走了很多弯路。参见网址:http://www.blogjava.net/BlueDavy/。 ModuleFusion 也是一个不错的项目,里面集成了现有的优秀框架,包括hibernate,guice,wicket等。参见网址:http://code.google.com/p/modulefusion/。
阅读全文
posted @
2009-02-12 20:36 布衣郎 阅读(6137) |
评论 (8) |
编辑 收藏
posted @
2009-02-08 20:33 布衣郎 阅读(1941) |
评论 (0) |
编辑 收藏
posted @
2009-02-07 20:28 布衣郎 阅读(1583) |
评论 (0) |
编辑 收藏
摘要: 研究了ext很久了,一直想为ext直接封装一个服务端组件。考虑到ext组件的构建都是需要使用js来完成,那么服务端生成的代码也就是js而不是html。
阅读全文
posted @
2008-01-02 18:36 布衣郎 阅读(3434) |
评论 (4) |
编辑 收藏
摘要: 最近的这段时间,感觉Ext挺火的。接触Ext还是半年前的事情了,那时候就想对Ext进行封装,做一个服务端的Ajax框架出来。
阅读全文
posted @
2007-12-28 19:01 布衣郎 阅读(3902) |
评论 (7) |
编辑 收藏
posted @
2007-12-27 19:00 布衣郎 阅读(1695) |
评论 (1) |
编辑 收藏
摘要: 这些东东,对于web框架来说,是必不可少的,来看看jsf是如何实现的。首先看一下国际化,默认的情况下,会选择默认的locale,以及相应的资源文件。当然可以通过以下方式进行配置:
阅读全文
posted @
2007-05-24 13:26 布衣郎 阅读(3071) |
评论 (0) |
编辑 收藏
摘要: 先来看看velocity是怎么工作的?
在应用中使用velocity,一般需要以下的几个步骤:
* 初始化Velocity,可以使用单例,或者运行期实例
* 创建context对象,用于包括相应的变量
* 在context中增加相应的数据
* 选择模板
* 合并模板,产生输出
阅读全文
posted @
2007-05-17 07:34 布衣郎 阅读(3847) |
评论 (0) |
编辑 收藏
摘要: 一个古老而又强大的模版引擎。在模版引擎中,velocity中,应该属于最常用的,不管是在maven的项目模版,还是在源代码输出,甚至直接网页输出中,都可以看到其身影。当然,最近的freemarker大有平分天下之意。
阅读全文
posted @
2007-05-14 08:30 布衣郎 阅读(4985) |
评论 (4) |
编辑 收藏
摘要: 对于标记库,不想再说些什么了。jsf可能最大的毛病都在这个标记库上面,首先定义的标记在jsp中,并不起到相应的输出功能,而只是用来增加相应得组件。在jsf中,最上层的组件为UIViewRoot,基本上所有的操作都是需要围绕着此组件。而标记库的存在,只是为了简化相应的操作。
阅读全文
posted @
2007-05-09 20:33 布衣郎 阅读(2776) |
评论 (4) |
编辑 收藏
摘要: 这是jsf 的分析系列第三篇,随着不断的深入,jsf的设计变得越来越清晰。当然,在目前的规范中,jsf还是很不完善的,这也就导致了为什么jsf还是不能成为目前的主流框架。先不去谈论这些弊端,还是先看看一下jsf具体是如何运作的。
阅读全文
posted @
2007-05-04 15:44 布衣郎 阅读(3500) |
评论 (3) |
编辑 收藏
摘要: 接上一篇内容。这次主要分析一下jsf的相关组件包,也是jsf和structs主要不同的地方。jsf 规范中,对于组件的设计,和其他组件架构一样,分离表现层和模型层。对于组件的render由具体的Renderer来处理,这也达到了Model和 View分离的原则。
阅读全文
posted @
2007-04-25 16:33 布衣郎 阅读(2790) |
评论 (2) |
编辑 收藏
摘要: 经过一段时间的学习,对jsf的认识也逐渐清晰。总结了一下jsf和structs的区别,首先在于分离了请求的处理。使用事件处理机制来代替原有的request分发。其次在页面的展示上,采用组件的概念,而不是到处散落的html标记。再有,jsf对于请求的生命周期重新进行了划分,对于每个阶段都可以派遣事件,这使得整个请求的处理比较的清晰。最后,jsf对于页面的流转使用Navigation系统来处理,这一点感觉和structs还是比较类似的,只是换了一个概念。
阅读全文
posted @
2007-04-21 20:06 布衣郎 阅读(1856) |
评论 (1) |
编辑 收藏
摘要: 用泛型时遇到的尴尬问题,关于java.beans的相同方法名称问题
阅读全文
posted @
2007-04-17 08:22 布衣郎 阅读(1565) |
评论 (1) |
编辑 收藏
摘要: 在eclipse中使用jetty是非常简单的,对于其他的ide配置基本上都一致。以前如果想调试web服务,必须要在庞大的开发插件下进行,如 myeclipse,其实只是需要简单的功能,然而却不得不接受许多不常用的功能。没有办法,现在有了jetty,如果你只想调试web服务而已,那么请离开那些庞大的开发插件。简单的事情,用简单的方式处理。
阅读全文
posted @
2007-04-12 13:42 布衣郎 阅读(18900) |
评论 (9) |
编辑 收藏
摘要: 一直以来使用jetty作为我的web开发配置服务器,开始的时候和所有的初学者一样使用tomcat作为开发服务器,可用着用着,感觉tomcat越来越繁琐以及庞大。后来,用了jboss,知道jboss使用jetty作为其web应用服务器,所以就开始试着使用jetty。从那开始后,jetty就成为我的开发配置服务器了,从最初的4.0,到现在的6.0一直在使用着。
阅读全文
posted @
2007-04-09 07:59 布衣郎 阅读(26255) |
评论 (8) |
编辑 收藏
摘要: web 开发很多年了,从单纯的jsp 到struts,再到webwork,接着就是spring 的mvc。感觉jsp 的封装性,实在不怎么样。于是乎想到了组件化,以前的时候用过echo,现在是echo2,不可否认,echo的设计结构比较的不错,完全的面向对象化开发,也没有了那些令人讨厌的jsp。不过实在受不了的就是echo的速度,echo2据说已经大幅改进,而且完全的实现了ajax。不过echo2毕竟受关注度不是很广,还是决定放弃使用。
阅读全文
posted @
2007-04-07 08:49 布衣郎 阅读(1459) |
评论 (1) |
编辑 收藏
摘要: ehcache的默认配置文件名为ehcache.xml,也可以自己指定。配置文件比较的简单,基本上也就是常用的几个元素。
阅读全文
posted @
2007-04-05 18:42 布衣郎 阅读(7060) |
评论 (1) |
编辑 收藏
摘要: 一直以来懒得配置缓存,基本的缓存也就是orm层,基本上都交给hibernate去配置了。这段时间,感觉页面速度太慢了,还是需要使用缓存。现在的缓存工具也挺多的,较不错的属ehcache和oscache了。决定分别研究一下。
阅读全文
posted @
2007-02-28 20:14 布衣郎 阅读(24200) |
评论 (15) |
编辑 收藏
摘要: jibx又一个不错的xml绑定工具,随着这段时间的使用,感觉越来越随心应手了。和jaxb一样,都是属于xml绑定工具。不同于jaxb,jibx使用java字节码enhance技术,而jaxb更多在于源代码生成技术。
阅读全文
posted @
2007-02-26 20:44 布衣郎 阅读(4341) |
评论 (0) |
编辑 收藏
摘要: 关于java字节码的处理,目前有很多工具,如bcel,asm。不过这些都需要直接跟虚拟机指令打交道。如果你不想了解虚拟机指令,可以采用 javassist。javassist是jboss的一个子项目,其主要的优点,在于简单,而且快速。直接使用java编码的形式,而不需要了解虚拟机指令,就能动态改变类的结构,或者动态生成类。
阅读全文
posted @
2007-02-10 21:02 布衣郎 阅读(13753) |
评论 (9) |
编辑 收藏
摘要: 在java中,类装载异常虽然不是很常见,可如果发生异常,其处理还是比较麻烦的。
下面的几种异常是比较常见的:
阅读全文
posted @
2007-02-04 20:58 布衣郎 阅读(1820) |
评论 (0) |
编辑 收藏
摘要: 使用maven2的另外一个好处,就是有了统一的入口,用于察看项目的进展情况。这主要包括了项目的介绍,成员介绍,以及相关的项目的文档,当然也包括项目的所有进展报表。
下面,通过实例来介绍如何配置maven,来产生项目站点。
阅读全文
posted @
2007-01-31 20:22 布衣郎 阅读(2324) |
评论 (0) |
编辑 收藏
摘要: 这几天,看了jpa(java 持久性 api)的规范,作为ejb3的重要组成部分,jpa 还是值得关注的。看完规范,感觉jpa还是比较的单一的,
其目标就是实现java 持久性的通用。jpa采用纯pojo的方式实现,更多的是采用java 5注释。jpa 的优势是多供应商的支持,可以运行在容器
阅读全文
posted @
2007-01-23 21:20 布衣郎 阅读(3467) |
评论 (6) |
编辑 收藏
摘要: hibernate 的强大在于完全的对象化,对于对象之间的关系解决的比较好,如1对1,1对多,多对1,以及多对多。当然也包括继承关系。
而ibatis这方面就比较逊色了,不过对于也支持简单的关连查询,如1对1,和1对多。对于一般的情况来说,这两种已经足够了,当然不能层叠更新是一个缺陷,看了半天文档,也没有找到对象之间的层叠更新,估计是不支持。
阅读全文
posted @
2007-01-16 16:22 布衣郎 阅读(5476) |
评论 (8) |
编辑 收藏
摘要: 不过在spring 中已经提供了很好的实现,所以这又省去了很多的功夫,接下来看看ibatis是如何支持clob和blob的。
ibatis提供了TypeHandler接口,用于处理数据类型,基本的实现类为BaseTypeHandler
在spring 中,提供了AbstractLobTypeHandler作为基础类,并且提供了相应的模版方法,所有的工作由LobHandler处理。
BlobByteArrayTypeHandler 主要用于处理blob类型数据,使用byte[]来映射相应的blob
ClobStringTypeHandler 用于处理clob类型数据,使用字符串来映射Clob
阅读全文
posted @
2007-01-13 21:53 布衣郎 阅读(9390) |
评论 (1) |
编辑 收藏
摘要: 用了很久hibernate ,突然想换个别的orm 工具,当然在orm领域中,hibernate是老大。看了一下ibatis,发现如果对于crud操作不是很多的系统来说,是个不错的选择,尤其是适合那些对sql和性能热衷的开发者。综合来说ibatis不能算orm工具,只能算个半成品。不过比起直接用jdbc写,那还是方便多了。主要的好处是分离了sql和代码,如果你想追求性能,那么sql是你很好的利器,当然ibatis的缓存也不错。比起hibernate,ibatis就简单多了,估计也就3天能够基本掌握了,这大大减少了学习成本。
阅读全文
posted @
2007-01-10 20:27 布衣郎 阅读(2281) |
评论 (1) |
编辑 收藏
摘要: 对于团队来说,建立统一的开发环境是必须的,而maven能很好帮助建立统一的环境。下面就介绍如何更有效的进行统一的配置。
阅读全文
posted @
2007-01-07 19:41 布衣郎 阅读(6560) |
评论 (5) |
编辑 收藏
摘要: 在spring 的以前版本中,只是支持singleton,prototype两种类型,
在2.0中作了很大的改进,增加了RequestScope,和SessionScope两种范围。当然也支持自定义Scope
下面简单介绍一下,spring2.0是如何支持自定义Scope的。
阅读全文
posted @
2007-01-04 18:37 布衣郎 阅读(1550) |
评论 (0) |
编辑 收藏
摘要: 说完了settings.xml配置,下来说一下maven2的主要配置pom.xml
什么是pom?
pom作为项目对象模型。通过xml表示maven项目,使用pom.xml来实现。主要描述了项目:包括配置文件;开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目的url,项目的依赖性,以及其他所有的项目相关因素。
阅读全文
posted @
2006-12-30 20:05 布衣郎 阅读(88170) |
评论 (3) |
编辑 收藏
摘要: maven2 比起maven1 来说,需要配置的文件少多了,主要集中在pom.xml和settings.xml中。
先来说说settings.xml,settings.xml对于maven来说相当于全局性的配置,用于所有的项目。
阅读全文
posted @
2006-12-29 20:16 布衣郎 阅读(35033) |
评论 (0) |
编辑 收藏
摘要: 相信maven1 大家都已经很熟悉了,具体maven能做什么,就不详细说了。个人觉得maven在开源项目中用的还是比较多的
阅读全文
posted @
2006-12-02 10:46 布衣郎 阅读(2120) |
评论 (0) |
编辑 收藏
摘要: 为了建立统一的类库,以及统一的项目管理入口。这两个礼拜来,一直看maven2的资料。刚开始以为maven2跟ant差不多,应该很快就能上手,可是越看越麻烦,可能我的E文水平太滥的缘故
阅读全文
posted @
2006-12-01 06:51 布衣郎 阅读(3298) |
评论 (7) |
编辑 收藏
posted @
2006-11-26 16:53 布衣郎 阅读(603) |
评论 (0) |
编辑 收藏
摘要: 观察者(Observer)模式
用途:定义对象之间的一对多依赖关系,因此,当一个对象的状态发生改变时,其所有依赖项都会得到通知,并自动更新。
阅读全文
posted @
2006-11-17 16:55 布衣郎 阅读(1414) |
评论 (0) |
编辑 收藏
摘要: 几个有用的静态方面
阅读全文
posted @
2006-11-16 18:56 布衣郎 阅读(1053) |
评论 (0) |
编辑 收藏
摘要: 读取xml对于应用软件来说是一个必不可少的工作,当然现在的jdk也提供了很好的处理xml方式,读写xml的库也挺多,包括有名的dom4j,不管使用任何的代码库,对于xml只是一个解析工作而已,不能马上绑定到java 对象。对于对象,每次都需要set 或者get相应的属性,当然也可以使用map 来保存xml配置。
阅读全文
posted @
2006-11-11 20:20 布衣郎 阅读(4383) |
评论 (1) |
编辑 收藏
摘要: JavaTM Architecture for XML Binding (JAXB) 提供了api 和工具用于自动映射XML文档和Java对象。
JAXB框架允许开发者执行以下的操作:
通过schema 生成相应的java 源文件
访问以及更新相应的java 源文件
配置java 源文件,生成相应的schema
阅读全文
posted @
2006-11-08 20:49 布衣郎 阅读(2185) |
评论 (0) |
编辑 收藏
摘要: 看了spring test 用例,其实实现这一功能还算比较简单,主要分以下的步骤,具体的实例可以去参考spring 自带的testcase
阅读全文
posted @
2006-10-27 18:18 布衣郎 阅读(822) |
评论 (0) |
编辑 收藏
摘要: 在spring 2.0 中,增加了自定义xml标记这一重大的功能。下面主要看一下spring 2.0实现这一功能的主要相关类:
阅读全文
posted @
2006-10-27 18:08 布衣郎 阅读(746) |
评论 (0) |
编辑 收藏
摘要: 默认的情况下,Aspect类只有一个实例存在于虚拟机中,也就是作为单例存在的,对于每个对象来说,方面是共享的。一般这样的方面,不能用来保存相应对象的状态。
对于AspectJ 来说,Aspect方面类,包括以下的实例化方式。
阅读全文
posted @
2006-10-21 20:50 布衣郎 阅读(1972) |
评论 (0) |
编辑 收藏
摘要: 这两天忙着看AspectJ in Action 为了补一下AOP知识。看了Spring 2.0的规范,其中AOP部分已经基本融合了AspectJ,看来有必要看一看AspectJ了。
看了很多AOP的文章了,AOP这两年发展的很慢,没有什么新意,现在到处都是SOA,SCA了,不过研究了一下,觉得还是很有帮助的。尤其是增加系统的契约性和模块的独立性来说,很有帮助。
阅读全文
posted @
2006-10-17 20:00 布衣郎 阅读(4797) |
评论 (3) |
编辑 收藏
摘要: TestNG是一个不错的测试框架,尤其是用于模块测试,以及大范围的测试。相对于JUnit来说,更为灵活。随着JUnit4的推出,很多功能都与TestNG相似,但相对于JUnit4,TestNG还是有很多部分是有区别的。
阅读全文
posted @
2006-10-05 15:44 布衣郎 阅读(5782) |
评论 (5) |
编辑 收藏
摘要: JUnit 4 已经出来很久了,基本上很多ide都开始支持,当然为了兼容性,一直不太敢用。以前都是懒得写单元测试,大多数的时候都是 System.out.print。不过现在已经是测试驱动的时代了,为了保持一个良好的习惯,还是需要好好的写写单元测试。断言远比 System.out.print有用。
阅读全文
posted @
2006-10-03 10:36 布衣郎 阅读(2669) |
评论 (7) |
编辑 收藏
posted @
2006-09-22 20:50 布衣郎 阅读(903) |
评论 (3) |
编辑 收藏
摘要: 关于单元测试,模拟对象一直是不可缺少的,尤其对于复杂的应用来说。
这么多的模拟对象框架中,个人觉得比较好用的当属EasyMock了。当然JMock也不错。
下面简单介绍一下EasyMock 。
阅读全文
posted @
2006-09-20 20:38 布衣郎 阅读(3064) |
评论 (1) |
编辑 收藏
摘要: 在 1.x中,spring 的事务声明,一直是采用动态代理bean 实现的,也就是采用ProxyFactoryBean或者子类TransactionProxyFactoryBean来实现的
spring 2.0带来的aop变化和bean xml schema的变化,使得事务的处理变得更加的简单,同aop一样,事务也采用两种方式来处理,一种主要为xml 声明,另外的一种也就是注释的引入。
阅读全文
posted @
2006-09-18 20:13 布衣郎 阅读(2643) |
评论 (0) |
编辑 收藏
posted @
2006-09-17 11:13 布衣郎 阅读(2809) |
评论 (4) |
编辑 收藏
posted @
2006-09-15 19:31 布衣郎 阅读(1608) |
评论 (1) |
编辑 收藏
posted @
2006-09-15 09:41 布衣郎 阅读(1976) |
评论 (0) |
编辑 收藏
posted @
2006-09-09 08:32 布衣郎 阅读(647) |
评论 (0) |
编辑 收藏
posted @
2006-09-06 20:05 布衣郎 阅读(710) |
评论 (0) |
编辑 收藏
posted @
2006-09-02 10:10 布衣郎 阅读(1183) |
评论 (0) |
编辑 收藏