




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
利用元数据和RIA简化企业应用程序的开发 曹晓钢BEAUGGuangzhou 2006 3 12 Agenda MVC面临的用户体验困境构件化界面组织 QooxdooRichBrowser Server所需的DataTransportDataBinding与metadata的关系Demo Requirment Hibernate基础知识MVC基础知识Spring基础知识 JavaWeb编程模型 Servlet规范RequestResponseSessionJSP本质上是servlet编译生成器 MVC Model对应域模型View观察域模型的不同视角Controller真正进行对象操作 MVC出现的背景 在JSP中混杂进行数据库编程将数据准备与数据展现混杂在一起将数据处理与结果展现混杂在一起因为以上的混杂 无法有效的利用OO进行对象建模Struts和WebWork解决了这两个主要的混杂问题 MVC没有解决的问题 MVC模型仍然基于request response 因此需要用多次交互才能完成一次 用户操作 保存现场于session反例 将Hibernatesession绑定到httpsession使用continuation仍然是低层协议 界面建构仍然留给程序员完成界面建构时 客户端界面代码同时出现在客户端和服务器端 新的web框架方向 Continuation解决交互不连贯问题构件化界面开发TapestryJSF以上二者都仍然在服务器端进行界面建构使用纯粹客户端控件进行界面建构 JavaScriptRIA JavaScriptRIA 基于IEbehaviour的控件封装基于XAML XUL的控件封装zk纯粹javascriptDHTML的控件封装Bindows 付费授权 Qooxdoo 开放源代码 注意 JavascriptRIA在激烈演进中 仍然需要更多的时间等待其稳定 Qooxdoo http qooxdoo oss schlund de OpenSource跨浏览器平台InternetExplorer 5 5Mozilla 1 3Firefox 1 0Opera 8 0有对应的实际公司 德国 在实际工程中使用仔细的进行过内存泄露测试 没有已知的泄露开发活跃 基础设施较完善 Qooxdoo 对象继承基础设施QxNativeQxExtend事件基础设施QxEventButton addEventListener click function xxx Propertyevent QooxdooLayout CanvasLayout使用横纵座标对控件绝对定位BoxLayout单方向堆叠式自动对齐控件FlowLayout对控件进行自动换行DockLayout在行列两个方向均可以自动堆叠GridLayout提供类似于HTMLTable的定位方式 QooxdooAppearence 对CSS和Border的封装引入State 分离用于表达控件状态的代码引入Theme 用于切换外观主题对字体的统一控制尚欠缺 QooxdooWidget Qooxdoo提供 AtomButtonMenuToolbarSpincomboboxListviewTreeviewTabcontrolWindow Qooxdoo控件扩展 实例 扩展listview的例子 Qooxdootransport AJAXenabledTransports IFramexmlhttpget RIA编程 MVC转移到客户端通过AJAX与服务器端的MVC基础设施联系用户在客户端使用javascript表达一个连贯的操作 逻辑前移Onepage oneoperation客户端逻辑取代在服务器端的session continuation更好的分离界面逻辑与业务逻辑 BrowserasaMACHINE Browser作为javascript语言运行的内存HTTP作为数据访问协议客户端Object与服务器端Object的映射 需要考虑的问题 界面元素的展现形式每个界面元素对应于域模型的一个POJO界面元素中的property和POJOproperty对应是否需要在客户端了解property的属性 Validation的需要Format的需要Query的需要是否需要在客户端了解POJO之间的关联关系 在多个界面中维护同一对象同一属性一致的外观和操作在对象关联的时候 在界面中直接进行对象选择操作 ClientSideMVC Model层的Cache Model之间的referenceView的表述方式XUL XAMLDHTMLWidget 在B S之间传递数据 QxTransportBuffalo burlap协议 JSON 自定协议json rpc Buffalo和JSON使用的协议较详尽 适合作为B Sremotecall使用 http michael nona name archives 85 MichaelChen的blog中有较完整说明传输流程图 Buffalo DataBind 如何把数据绑定到客户端控件XMLDataIsland无法跨越浏览器此领域尚未有标准方法Bind后客户端控件重新渲染时 利用元数据进行格式化对关联类型的绑定Metadata是DataBind的最重要来源 metadata Entity所需的metadataProperty属性NullableIdentityLengthScaleTypeEntity之间的关联JDBCResultSetmetadata中内容有限Hibernatemetadata和Mappingconfiguration可以提供model层的metadata在view层的表现形式可能被overrideSDO4JS JavascriptRIAPros Cons Pros可以直接调用springbean 逻辑前移 客户端的MVC模型对应Cons框架在激烈的演进中 尚未稳定DataBind需要特别关注同步AJAXRPC与异步AJAXRPC的使用场景Buffalo这点上尚需改进异步AJAXRPC拓扑图异步竞态问题 Pros Cons2 N 1问题 AJAXobjectlazyloading注意 客户端无法使用CacheAJAXQueryinterface注意到服务器端可能不是数据库QueryFetchPath强制指定Javascript本身带来的问题速度内存泄露 That sAll ThankYou Aboutus 满江红开放技术研究组织OpenDocHibernate开发指南Spring开发指南iBatis开发指南WebWork开发指南CruiseControl使用指南ShifttoDynamic Smalltal
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新能源绿色金融政策与绿色能源产业政策创新实践研究报告
- 2025年金融行业数据资产价值评估与变现模式报告
- 2025年新能源汽车动力电池回收利用技术创新趋势分析
- 2025年中国高尔夫三层球行业市场分析及投资价值评估前景预测报告
- 2025年中国高端电磁炉灶台行业市场分析及投资价值评估前景预测报告
- 3.1 空间向量及其运算说课稿高中数学人教A版选修2-1-人教A版2007
- 2025年中国高纯金属材料行业市场分析及投资价值评估前景预测报告
- 5.2《古今中外话桥梁·家乡的桥》 说课稿 2024-2025学年辽海版《综合实践活动》七年级上册
- 1 生活中的立体图形教学设计初中数学鲁教版五四制2012六年级上册-鲁教版五四制2012
- 2025年中国复合壁板行业市场分析及投资价值评估前景预测报告
- 第八章新时代坚持和发展中国特色社会主义的重要保障-2024版研究生新中特教材课件
- 江苏省南京市秦淮区2024-2025学年八年级上学期期中考试英语试题(含答案解析)
- 2024风电齿轮箱润滑油生物基滤芯
- 工业互联网技术基础 课件 第4、5章 PaaS层与工业大数据治理、应用层与工业APP开发
- 消化内科护士进修汇报
- 2024年4月自考00840第二外语(日语)试题
- 《只有一个地球》完整
- 管路清灰施工方案
- 人教版七年级上册地理全册教案【全套】
- 兄弟之间宅基地互换协议书
- 中学教职工参加升旗仪式的规范要求
评论
0/150
提交评论