现在基于 J2EE 的应用,或多或少的都会采用某些 FrameWork, 著名的有开源的 Struct 等。尽管如此,这些框架系统的门槛还是比较高,对初级程序员或不很熟悉J2EE的程序员具有一定的难度。从开发效率上来讲,如 Struct 等还没有彻底把程序员从界面任务上解脱,离“程序员全部精力集中于业务逻辑开发”的目标尚有距离。
本人在这里提出一个集成开源技术的轻量级应用框架设计思路,希望能抛砖引玉,了解各位对应用框架的认识、需求,如果能就此形成有价值的东东实在是一件大好事。
一个框架要解决的问题,首先要专注于基本方面:
1、彻底的分离界面与程序设计,解决界面部分的开发工作量;
2、数据库-关系映射,解决对象持续化方面的问题;
在此之上,可以继续解决高一个层次的问题:
1、用户及权限
2、业务流程管理(工作流)
3、企业应用最常用的帐务(资金、库存等)
4、其他
达到第二个层次,此框架就可以升级为极有价值的“业务流程管理平台”。
所谓轻量级,是跟其他框架结构相比而言的。此应用框架希望达到:在使用者看来,只有一个 html 源文件、一个页面配置文件、一些 ORM 配置文件和相应的业务逻辑代码开发即可。
基本集成方案
界面部分,集成 XMLC (www.enhydra.com)。XMLC 是一项很先进的技术,彻底分离了表现层与逻辑和控制层,对.html文件进行编译生成Java对象,对此对象编程即可控制界面元素。
数据库部分,集成 Hibernate 或其他 ORM 产品。在此推荐 jaxor (jaxor.sf.net)。jaxor使用代码预生成技术,对关系表生成映射对象接口和对应的操纵对象,具有简便、易上手、高效率的特点。
有了这两大基础,配置一个“页面配置文件”(Page Config xml file),对框架主处理程序通知其页面配置文件的ID,依据此页面配置运行。
在页面配置文件当中,还可以使用 Jython / BeanShell 等Java类脚本,描述页面事件处理内容。这样,可以基本不写或少写 Java 代码,就可以得到需要的页面。
J道高手云集,期望道友对此框架思路价值予以评价。