Struts Web开发框架WebPage3
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:同时支持?C客户端和富客户端
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的开发团队可以随时为您提供技术指导、技术资源、技术培训、技术服务

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-131249/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/374079/viewspace-131249/

[转载]Struts Web开发框架WebPage3相关推荐

  1. [转载]基于MVC4+EasyUI的Web开发框架经验总结(8)--实现Office文档的预览

    在博客园很多文章里面,曾经有一些介绍Office文档预览查看操作的,有些通过转为PDF进行查看,有些通过把它转换为Flash进行查看,但是过程都是曲线救国,真正能够简洁方便的实现Office文档的预览 ...

  2. JavaScript是如何工作的:编写自己的Web开发框架 + React及其虚拟DOM原理

    摘要: 深入JS系列19. 原文:JavaScript是如何工作的:编写自己的Web开发框架 + React及其虚拟DOM原理 作者:前端小智 Fundebug经授权转载,版权归原作者所有. 这是专门 ...

  3. 基于MVC4+EasyUI的Web开发框架经验总结(8)--实现Office文档的预览

    在博客园很多文章里面,曾经有一些介绍Office文档预览查看操作的,有些通过转为PDF进行查看,有些通过把它转换为Flash进行查看,但是过程都是曲线救国,真正能够简洁方便的实现Office文档的预览 ...

  4. 我的第一个python web开发框架(3)——怎么开始?

    小白与小美公司经过几次接触商谈,好不容易将外包签订了下来,准备开始大干一场.不过小白由于没有太多的项目经验,学过python懂得python的基本语法,在公司跟着大家做过简单功能,另外还会一些HTML ...

  5. 基于.Net 2.0 (C# 2.0, ASP.NET 2.0)的快速Web开发框架设计

    基于.Net 2.0 (C# 2.0, ASP.NET 2.0)的快速Web开发框架设计 整个Framework结构如下: Framework.Common - 常用组件(Design By Cont ...

  6. 兼容Mono的下一代云环境Web开发框架ASP.NET vNext

    微软在2014年5月12日的TechEd大会上宣布将会发布下一代ASP.NET框架ASP.NET vNext的预览.此次发布的ASP.NET框架与以前相比发生了根本性的变化,凸显了微软"云优 ...

  7. java开源框架有哪些_java web开发框架有哪些

    1 java web开发框架有哪些 java,互联网发展出来的产物,如今变成了屈指可数的几大编程语言之一,他的未来是不可限量的.因此很多人都想要学会这门技术,希望在以后能有他的一席之地.那么下面小编给 ...

  8. spyder开多个程序_【程序源代码】基于Vue+ElementUI web开发框架

    " 关键字:开发框架 vue  web 开发框架" 正文:开发框架 web 开发框架  vue 01 - 基于 Vue + ElementUI 的web项目工程框架 专注于中台系统 ...

  9. 我的第一个web开发框架

    怎么才能成为一名架构师?需要具备哪些条件? 作为一名码农我迫切希望自己成为一个比较合格的web架构师,昨晚心血来潮小弟花了4个小时的时间整了个简易的web开发框架,本着开源的精神做个分享,希望和更多的 ...

最新文章

  1. 数据库死锁查询及处理
  2. 中国SaaS死或生之七:死生非大事,利益最相关
  3. 三、css 和 js 的装载与执行
  4. xampp mysql登录失败_XAMPP修改mysql的root密码phpmyadmin无法登陆
  5. xgboost使用自定义的loss function
  6. IntelliJ IDEA 怎么知道项目信息_如何重新打开已经移除的项目_如何关闭和删除项目
  7. nacos配置ap_Nacos 1.0.0 功能预览
  8. ffmpeg优化mp4以及hls参数设置
  9. 可行性研究和软件项目计划主要完成什么工作?_软件生命周期
  10. python竖着输出编码_在Python中使用管道标准输出时设置正确的编码
  11. mysql 密码忘了_mysql8.0以上版本安装配置及忘记密码时重置
  12. 计算机控制器的简写,工业控制常用英语及缩写
  13. 龙格-库塔(Runge-Kutta)
  14. pcb外观维修_5种最常见的PCB维修
  15. netware php_Apache MPM netware
  16. matlab标定投影误差,opencv 角点检测+相机标定+去畸变+重投影误差计算
  17. 瑞幸咖啡砸10亿教育市场,会成为下一个“小黄车”吗?
  18. C++复原2048小游戏(纯文字)
  19. DOOM之父约翰·卡马克
  20. 你好,你是谁,可不可以向我出示源代码让我确认身份

热门文章

  1. bugku +[]-
  2. 我的微语录周记2014-10-27---2014-…
  3. 中国专科医院行业市场规模及未来发展趋势
  4. JavaScript CSS Style属性对照表
  5. 解决selection does not contain a main type
  6. 日语零基础,为什么有人可以学半年过N1?
  7. 关于六个嫌疑人的问题
  8. HTML5入门(创建项目)
  9. Suggestion: add 'tools:replace=android:authorities'解决
  10. 细谈测试---我的启示录