Jdon框架1.2版本发布,包括详细文档。

Jdon Framework 1.2较前次版本有很大改进,主要是增强了组件构件管理和AOP方面的功能。

Jdon框架给J2EE应用开发带来主要的好处是:
当你的项目刚开始时,它可能是一个小项目,实现一些简单功能,这时你可能只需要使用普通JavaBeans(POJO)实现数据库操作业务,这个POJO一般一次请求生成一个实例(使用new)。

当访问量逐渐增加,这种POJO每次请求生成和销毁都会耗费性能,你的J2EE应用系统可能出现性能降低缓慢等现象,这时我们就需要池(Pool)和缓存(Cache)来优化。

下面我们从J2EE应用系统运行原理开始简单分析:
如果在某个时刻有两个以上用户同时访问你的系统,也就是说同时发出请求(例如刷新页面),因为J2EE应用系统是运行在J2EE容器中(Tomcat JBoss),而J2EE容器(如Tomcat)等前端有线程池支持;後端有数据库连接池支持,这些虽然提升了你的系统性能,但是因为你的代码最重的POJO是每次请求创建,这实际是整个系统的性能瓶颈。

用对象池优化你的POJO 服务类;用缓存优化你的数据类。这就是使用Jdon框架带给你性能上的跳跃。

使用Jdon框架后,你的J2EE应用系统性能提升不少,但是访问量还是不断上升,尽管优化了其他该优化的:JVM;J2EE服务器;数据库等,系统性能还是碰到了天花板。

使用EJB的多服务器集群分布式计算特性吧,只要增加服务器就可以提升性能。

这时,你可能用EJB将你的POJO封装起来,经过这样架构升级,如果你不使用Jdon框架,你的表现层(Struts)中原来调用POJO的代码需要修改,这是一个存在相当风险的大手术,你可能要全部重新测试;但是使用了Jdon框架,你做的只是在Jdonframework.xml配置中修改一下即可,整个系统代码无需更改。(其他框架升级到EJB时,需要你的EJB继承原来的接口,且需要EJB配置,不方便)

从你的项目一开始就使用Jdon框架,它带给了你方便的可伸缩的解决方案。也就是说:你的系统在规模很小时运行良好;在规模迅速扩张时,无需更改代码;带给你方便的架构更换。

Jdon框架帮助你实现架构设计的可伸缩性。
相比其他框架,Jdon框架实现了对POJO Service和EJB之间无缝支持。

Jdon框架1.2特点:
由于Jdon框架是Ioc模式和AOP实现,因此它拥有此类框架的一些共同优点之外, Jdon框架的独特特点有:
1. Jdon框架是可伸缩的、动态配置的,应用者可以将自己系统中的通用功能从具体系统中抽象出来,加入Jdon框架,从而逐步形成自己的行业专业开发框架。

2. Jdon框架提供强大缓存功能,无需编程,在自己的系统中加入Jdon框架后,自动提升了每个应用系统的运行性能,特别是批量查询性能。

3. Jdon框架提供的J2EE多层结构下数据增删改查(crud)快速开发方式,如果辅助以强大的开发工具,可以迅速地提高J2EE开发速度。

4. 使用Jdon框架可以完全解耦J2EE多层之间的耦合,从而实现应用系统稳定的健壮性、方便容易的可维护性。从而也使得J2EE表现层开发和业务层开发可以完全分离、各自独立同时进行,提高了开发效率。

5. 框架配置修改维护方便,Jdon框架配置划分三种:基础配置组件、AOP相关配置和应用服务配置,将经常需要修改、、与应用相关的配置单独出来,可分别修改和拓展。

6. 自适应的构造器注射,Jdon框架是基于PicoContainer为其微容器核心,PicoContainer主要是构造器注射,而且它拥有强大的自适应注射;其它类似框架则要在配置文件中逐个明确指定注射对象,配置烦琐。

7. EJB服务支持不同,Jdon框架支持EJB服务就如同支持一般POJO服务一样,方便直接,无需EJB服务继承特定接口;而其它类似框架(如Spring)则需要所有EJB服务继承特定接口。

8. Jdon框架的AOP功能是可分解的,通过缓存优化了动态代理实现,提高了运行性能,Jdon框架AOP支持所有遵循继承Aopalliance的拦截器。

9. Jdon框架目前使用流行的Struts作为其主要表现层框架支持。


近期将完善文档,并推出完全POJO的Struts+Jdon的Jpetstore演示项目,用于展示Jdon对POJO和EJB无缝方便地支持。敬请等待。

也欢迎更多有兴趣者加入开发,目前需要英文文档翻译、Jpetstore和JdonForum等框架应用项目的开发人员,如有兴趣请和我联系。

1.2框架下载地址:
http://sourceforge.net/projects/jdon/

1.2框架文档下载地址:
http://www.jdon.com/jdonframework/JdonFramework.pdf

ccc

再增加支持Annotations就更好了

表示层只支持struts不好看啊!

表现层具体什么框架已经不重要,基本通过jdonframework.xml的配置在一般情况下无需写代码了。

下一步会支持JSF。

本周更新了使用文档,目前总页数已经增加到40页,还有批量查询以及JPetstore开发两部分文档需要添加进去,希望本周一鼓作气将使用文档全部完成。

框架源码包中包含两个Samples,其中JdonNews是有EJB作为业务逻辑逻辑实现;也有POJO Service作为业务实现(UserJdbcDao),将数据库的JNDI名称在jdonframework.xml中作为UserJdbcDao构造常数赋值,达到了将可变部分放在配置中实现的目的。

更完整的POJO架构:Struts+Jdon+IBatis的Jpetstore本周预计可以出来,发现原来的iBATIS-JPetstore过分简单,没有后台管理部分(Category Product等数据的增删改查功能),这些功能在Jdon以前推出的eStore早就有了。当然为了效率,我也不在Jdon-JPetstore中添加后台管理部分,尽管这是Jdon框架的强项。

Jdon-JPetstore还没有完成的是批量查询部分,相信这部分也是Jdon框架强项,所以本周时间允许,我会尽快推出Jdon-JPetstore,让更多初学者或者认为EJB很难的高手能够目睹Jdon在他们认为的轻量架构中的表现。

也欢迎提出宝贵意见。

请问板桥兄,在ModuleViewAction中
ActionMessages errors = new ActionMessages();
ActionMessage error = new ActionMessage("id.notfound");
errors.add(ActionErrors.GLOBAL_MESSAGE, error);
saveErrors(request, errors);
为什么不用ActionErros errors=new ActionErrors();
ActionMessages与ActionErrors有什么不同?请板桥兄赐教!

回复luo6327529
主要考虑充分支持Struts 1.2, ActionError等好像只在Struts 1.1中适用。

请教banq,这个系统用到了Facade模式,用无状态Session Bean实现(NewsManagerBean.java),其中定义了几个变量:
TNewsHome tHome;
TNewsTypeHome ttHome;
TNewsOpinionHome toHome;
SequenceGeneratorLocalHome sequenceHome;
JdbcDao jdbcDao;
按无状态Session Bean的定义,无状态Session Bean是不保存状态的,这一点我不理解,请指教!

因为无态Bean是对象池支持的,所以,你使用完一个无态Bean后,它不消失,只是被放回Pool中,这个实例不消失,其中的字段属性当然还在,下次还可用。

Jdon框架1.2.1版本发布

改进了samples中案例项目,JdonFrameworkTest体现了从支持POJO到EJB的方便过渡,以后程序员开发jsp/servlet+javabeans系统,如果使用Jdon框架,不必担心将来无法迁移到EJB架构了。该例子演示了使用POJO或EJB都可以顺利运行。运行演示:http://www.jdon.com:8080/testWeb/
以前这个例子版本无需数据库,现在改为数据库,展现使用Jdon框架的JDBC模板开发的方便性。

为帮助初学者快速开发高质量的J2EE系统,我提供了使用Jdon框架开发的一个最简单Web系统,可在tomcat下运行,用eclipse/jbuiler打开,其中没有EJB概念,代码很少。其开发步骤可参考Jdon框架使用手册。


http://www.jdon.com/jdonframework/app.htm

初步了解JdonFramework,正在学习中.....
觉得整个JdonFramework中的exception处理不友好,
大部分直接抛出Exception,出了问题不知道你哪的问题!
有待重构.

多谢nmtcolin 欢迎加入,我已经给你去信了。

我没有收到你的信息!

详细怎么加入,怎么操作?