WebPage3是基于组件的、可视化的、轻量级的Web层开发框架。WebPage3开放组件设计接口,可以
自由开发能在WebPage3中使用的组件,而且开发组件非常简单。WebPage3能大大提高Web层的开发速度。
有人戏称WebPage3为“图形化的Struts”,也有人说是简化版的Struts + 图形化的Tapestry。
WebPage3基于MVC模式,重点解决View的部分,达到可以可视化开发和最大限度的复用。
对整个Web层开发提供全方位的开发帮助,做到:
(1)Web层开发可视化,简单化
(2)Web层开发组件化,重用化
(3)Web层开发通用化,通用功能的封装
(4)开放式框架,结合和集成更多的功能
从而构建简单易用、功能强大、可视化开发、最大限度重用的Web层开发平台,大大提升Web层开发的效率。
WebPage3基于标准技术,有极好的稳定性和可扩展性。主要使用:Java、Jsp、Servlet、Html、Javascript、Xml等技术,
不使用TagLib技术,简单易用。
特色功能
1:基于组件的Web开发框架
2:可视化开发,所见即所得
3:页面和逻辑完全分离
4:开放组件接口,开发新组件非常简单
5:组件基于Java,功能更强大,运行更稳定
6:已有大量常用组件
7:同时支持?客户端和富客户端
8:支持无刷新数据交换
9:自动生成基本主界面、基本子表界面、基本查询界面、基本列表界面
10:支持多界面组合
技术特点
1:完全B/S结构,简单易用
2:采用MVC模式构建,界面操作和处理逻辑相分离
3:动态的数据类型解析技术
4:动态的界面组装技术
5:页面及时生成技术
6:功能模板动态实例化技术
WebPage3对开发提供哪些帮助
WebPage3对整个Web层开发提供全方位的开发帮助,具体的开发过程请参见《如何选择Web开发框架》
1:通过WebPage3的界面设计工具,定义好数据结构后,WebPage3提供自动生成初始化页面。
2:然后可以可视化的选择组件,界面的具体表现形式由组件自行提供,WebPage3还提供可视化的布局。
3:页面基本表现形式设计好过后,就要具体设计每个组件的属性,WebPage3提供可视化的配置,
提供访问其他组件的方式。
4:对组件数据来源,提供多种方式,目前有:从数据库中取值,从request的参数中取值,从request的
属性中取值,从session中取值,从程序运行中取值。
5:页面上的权限控制,WebPage3提供可视化的配置,可以指定组件是否显示、是否可修改、是否
只读模式、是否被删除等等
6:页面取值和页面权限控制也提供编程式控制,可以在程序里面动态的控制页面组件的值,也可以动态
控制组件的权限,如:可编辑或是不可编辑。
7:页面提交或是页面事件触发,提供客户端事件处理,提供客户端数据检测等的客户端控制
8:数据提交到后台,WebPage3提供把数据从request里面封装到任意的数据model的工具,同时根据请求
的ActionCommand来选择合适的Action响应。
9:逻辑层处理完成后,WebPage3提供统一的控制方式,把数据传递到客户端,并根据逻辑数据,进行
客户端事件响应和新的页面展示
10:WebPage3还提供预实现的增删改查等功能,包括主子表的操作等,可以辅助进行快速开发。
11:WebPage3对应用中需要提示的例外信息,或是操作提示等,提供统一的消息服务,可以通过配置
消息文件来改变这些信息。
12:WebPage提供通用的数据操作功能,再加上可视化的开发方式,使得WebPage可以从讨论用户需求时
开始使用。一边跟用户讨论,一边进行基本页面开发,可以更深入的理解用户需求。由于用户能够直观
的看到软件界面,更容易确定和准确提出真实的需求,从而大大减少后期的需求变更。我们的使用经验
是需求讨论完毕,基本的程序功能界面就都有了,而且是经过用户确认的。
WebPage3.0的定位、理念、目标
一:WebPage3.0的定位
开放的、轻量级、基于组件的Web开发框架
解决目前Web开发,尤其是功能页面开发中,出现的问题。目前Web开发方面的问题主要集中在:
开发工作量大,重复劳动多,开发效率低下、维护困难、页面和逻辑相混杂等。
二:WebPage3.0的理念
让Web开发更简单、更快捷、更高效
三:WebPage3.0的目标
成为Web开发框架的主流,为更多的Web应用提供简单、高效的解决方案。
四:WebPage3设计的特点
1:WebPage3基于MVC模式,但又不死板的报着MVC不放,通过改良和辅助工具类,提供更灵活的架构
和更多的开发帮助。
2:完全基于组件,开放式框架,框架本身没有任何组件,所有的组件都是按照组件定义的规范来开
发,然后加入到框架中使用。这样就使得组件功能可以随意的扩展,而且对组件所使用的技术没有多少
限制,所有现在Web层能用的技术都可以在组件里面使用。也就是WebPage3框架找组件,然后组件自运
行。这使得WebPage3具有更强的生命力,可以兼容已有的技术积累,也能使用最新的开发技术。
3:WebPage3对Web开发的客户端和服务端都提供相应的帮助,全方位的为Web层开发的各个环节
提供帮助
4:关于可视化设计器,目前是基于IE来开发的,它只是用来加快开发的速度。事实上,完全可以
手工的配置WebPage3框架所需要的资源,当然,也可以开发Swing版的IDE。
WebPage3.0与JSF、TapeStry的异同和优势
基于组件的Web开发框架,是下一代Web开发框架的主流,目前国际上有名的基于组件的Web开发框架
有JSF和TapeStry。
WebPage3.0也是基于组件的可视化Web开发框架,所以这里重点比较一下与JSF和TapeStry的异同,
主要从技术实现上面进行比较:
比较项
JSF
TapeStry4
WebPage3.0
结论
页面开发
TagLib标签技术
Html+TapeStry属性
纯粹的Html
WebPage3.0更简单,更通用,更容易与美工等结合
Java编程模型
在JSF应用中没有页面定义文件,它只有一个全局的配置文件,命名为:faces-config.xml,里面通常都定义了一堆"managed beans"。这些managed beans都是带有属性和事件监听器的定义良好的java bean。在faces-config.xml中定义的后端bean都有三个参数:一个标识符、一个java类名、一个bean的生存周期,生存周期可以是request、session、application中的一种。
主要是三个部分:用于显示的页面模板(一般就是html),带有相关属性和方法的java类,用于定义页面模板上的控制元素和java类的关系的页面定义文件
分做服务端和客户端,在服务端主要是三个部分:用于显示的页面模板(纯粹的Html,可视化开发,不需要手工写)、页面数据模型定义(自动生成,不需要手工写)、页面事件响应Action类(如果使用自动数据处理,不需要写。否则相当于Struts中的Action,自行写处理代码)
在客户端:每个页面对应的script文件
WebPage3.0的编程模型更全面,考虑到Web开发的特殊性和实现的合理性,全面考虑,提供客户端模型和服务端模型。
在服务端模型结合了多种框架的优点,同时还提供了一些通用的功能实现,为快速开发提供帮助。
请求生命周期控制
单一的生命周期模型
生命周期依赖于调用的引擎服务,同时可以自己定制生命周期
同TapeStry4
WebPage3和TapeStry4的生命周期控制更灵活
页面导航
必须同时利用代码和配置文件来控制页面跳转流程
页面跳转逻辑定义在代码中,而不是写在配置文件中
页面跳转逻辑定义在页面组件的属性中或者在代码中
页面跳转逻辑是跟逻辑结果相关的,WebPage3的实现方式能更好的兼顾配置和代码定义的实现
易用性
十分困难
困难
十分简单
WebPage3.0的易用性是最好的
学习曲线
高
较高
十分低
WebPage3.0只需要基本的Java开发和基本的Javascript和基本的Html技术即可。一个Web开发人员1-2天内即可以掌握
与其它技术的包容性(如结合AJAX)
十分困难
困难
十分简单
WebPage3.0是一个纯粹的组件框架,对组件的技术实现限定非常小,通常只需要实现一个抽象父类即可,其它技术任意加
对已有资源的利用上(如:每个公司在多年的开发中已经有了很多的实现积累,想要把他们包装成组件进行使用)
没有好办法,基本上需要重新按照JSF的框架重新做
没有好办法,基本上需要重新按照TapeStry的框架重新做
非常容易,可以很简单的包装成一个可在WebPage3.0中使用的组件
WebPage3.0充分考虑到与已有实现的结合,能够有效保护已有的知识积累
技术支持
困难
十分困难
容易
WebPage3.0的开发团队可以随时为您提供技术指导、技术资源、技术培训、技术服务