·isFirst, isLast在什么情况下使用?在遍历dataset的时候会用到
·dorado执行的顺序,首先由jsp发送请求,调用相关的ViewModel,这个可以看成是一个Servlet,它先调用init方法,接着调用initDataset(),然后是调用initControl,最后是调用doLoadData()方法完成datasest的数据加载处理,在initControl用来对生成control html的过程进行控制,比如某些控件是否只读,是否可见等。
·各种控件的刷新是通过dataset来触发的
·如果要实现不刷新页面动态更新dataset绑定的congrol,需要使用dataset的flushData方法
·后台的ViewModel有两种状态,一种是在客户端刷新的时候发送的请求,一种是在客户端不刷新的时候发送的请求(STATE_SERVICE)
·设置pageSize在dataset中而不是control中
·在使用hibernate的时候,报没有找到数据源的异常是因为setting.xml中没有设置defaultDatasource的原因
·要让主从表联动,有两种方式,一种是在主表的afterScroll方法中,给从表的parameters传递参数,接着执行子表的flushData()方法,同时在从表的监听器afterLoadData方法中取得参数添加matchrule方法,另外一种方法就是在子dataset的MasterLink属性中设置主从表之间的字段关联(同时还要在从表的MatchRule中进行相关的设置),二者的区别在于,每一次使用flushData会执行sql语句,而设置MasterLink则能实现数据的缓存
·通过beforeLoadData方法的返回值来 决定是否调用loadData方法,如果返回为false将不调用,所有的before都具有这样的特性,即通过返回false来终止dataset的默认操作,包括after操作
·监听器只是为某一个Dataset服务的,在它内部是没有办法访问其他dataset对象,同样,它也没法访问到视图模型中的其他各种对象,它也不关心视图模型本身的各种状态,因此监听器内部的java代码应该是视图模型的状态无关
·服务器端视图模型的创建有两种情况,一种是基于jsp的请求,一种基于客户端dataset的flushData方法发送的请求,如果viewmodel事件代码是基于某一种请求来写的,那么一定会存在问题,这里主要是传递参数,比如基于jsp的请求就可以通过request来传递请求参数,而基于客户端dataset发送的请求是通过dataset的parameters来传递的,为了能做到客户端对两种不同的请求统一进行处理需要将两种传递参数的方式做到一致,即都通过view的proeprties来传递参数
·为了在flushData请求中也能使用第一次jsp请求发送的参数,需要使用view的properties来保存request请求的参数
·要把对数据的验证尽量放在dataset上(或使用Validator校验器或在dataset的事件中加以验证),而不是控件上,因为使用dataset的控件可能会有多个,而验证的逻辑只有一份
·Dorado里面各种Request信息的获取是通过DoradoContext.getContext().getParameter("xxx")来实现的.类似于Servlet中的Request.getParameter("xxx"),而如果是通过View的Properies来传递参数,这需要这样写:DoradoContext.getContext().getAttribute(DoradoContext.VIEW, "xxx").放在View的Properties中的值在服务器端和客户端都可以访问,如果是在客户端访问View的Properties属性,则需要这样写:getViewModel().properties().getValue("xxx");
·对于保存的dataset 需要设置keyFields,否则将无法保存,注意这里的keyFields并不等于数据库表中对应的主键,为什么需要keyfields来定位记录?它是如何定位记录的?
·dataset中的每一条记录都是状态信息的,客户端和服务器端都可以通过状态信息来进行相应的操作
·对于服务器端Dataset来说,所有的Dataset都实现了与POJO进行交换的相关方法:from(Single)DO和to(Single)DO
·FormDataset可以理解为一个FormBean,它的数据来自于一个Request对象
·对于autosqldataset来说,如果是了matchrule(通过dataset.parameters().setValue("xxx", "xxx")给matchrule中指定的value加匹配值),在不输入任何条件的情况下,希望能显示所有的数据,其做法是要设置escapeValue为true
·在所有dataset中,customDataset的扩展性是最高的
·CustomDataset和DODataset之间的唯一区别在于分页处理机制,CustomDataset需要通过设置pageIndex, pageSize以及pageCount来计算分页数据,而DODataset则把所有数据从数据库中取出来,然后在内存中自动进行分页处理

转载于:https://www.cnblogs.com/linsond/archive/2010/02/26/1674412.html

dorado学习笔记(二)相关推荐

  1. [转载]dorado学习笔记(二)

    原文地址:dorado学习笔记(二)作者:傻掛 ·isFirst, isLast在什么情况下使用?在遍历dataset的时候会用到 ·dorado执行的顺序,首先由jsp发送请求,调用相关的ViewM ...

  2. qml学习笔记(二):可视化元素基类Item详解(上半场anchors等等)

    原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7851 ...

  3. PyTorch学习笔记(二)——回归

    PyTorch学习笔记(二)--回归 本文主要是用PyTorch来实现一个简单的回归任务. 编辑器:spyder 1.引入相应的包及生成伪数据 import torch import torch.nn ...

  4. tensorflow学习笔记二——建立一个简单的神经网络拟合二次函数

    tensorflow学习笔记二--建立一个简单的神经网络 2016-09-23 16:04 2973人阅读 评论(2) 收藏 举报  分类: tensorflow(4)  目录(?)[+] 本笔记目的 ...

  5. Scapy学习笔记二

    Scapy学习笔记二 Scapy Sniffer的用法: http://blog.csdn.net/qwertyupoiuytr/article/details/54670489 Scapy Snif ...

  6. Ethernet/IP 学习笔记二

    Ethernet/IP 学习笔记二 原文链接:http://wiki.mbalib.com/wiki/Ethernet/IP 1.通信模式 不同于源/目的通信模式,EtherNet/IP 采用生产/消 ...

  7. Java学习笔记二:数据类型

    Java学习笔记二:数据类型 1. 整型:没有小数部分,允许为负数,Java整型分4种:int short long byte 1.1 Int最为常用,一个Int类型变量在内存中占用4个字节,取值范围 ...

  8. 吴恩达《机器学习》学习笔记二——单变量线性回归

    吴恩达<机器学习>学习笔记二--单变量线性回归 一. 模型描述 二. 代价函数 1.代价函数和目标函数的引出 2.代价函数的理解(单变量) 3.代价函数的理解(两个参数) 三. 梯度下降- ...

  9. ASP.NET MVC 2 学习笔记二: 表单的灵活提交

    ASP.NET MVC 2 学习笔记二:  表单的灵活提交 前面说到有做到公司内部的一个请假系统,用的是ASP.NET MVC 2+Entity Framework.虽然EF(Entity Frame ...

最新文章

  1. 一个老忘且非常有用的jquery动画方法 网页上卷
  2. 常见索引结构—二叉搜索树
  3. exi 虚拟服务器,图文教程:如何在ESXi主机上部署VMware Tools 10
  4. HDU4324(强连通的Tarjan算法)
  5. 基于javaweb的公交查询系统的设计与实现(含源文件)
  6. Kubernetes 为 Namespace 配置CPU和内存配额
  7. 深度学习《变分自编码器》
  8. Dubbo2.6.5入门——管控台的安装
  9. 匹配问题——匈牙利算法
  10. HC110110026 网络地址转换
  11. 2012蓝桥杯【初赛试题】手机尾号
  12. FND_MESSAGE使用总结
  13. 快搜网络爬虫用户代理 User-Agent
  14. GitHub无法访问下载
  15. 【C语言】BC62统计数据正负数个数(DAY 4)
  16. 使用gdebi去解决安装deb包的时候软件依赖问题
  17. 可行性研究、需求分析
  18. 分辨率PPI(Pixel Per Inch)与DPI(Dot Per Inch)
  19. OpenGL ES 实现实时音频的可视化
  20. 计算机环境与应用专业就业前景,2018资源环境科学专业就业前景和就业方向分析...

热门文章

  1. 类的内置方法__attr__介绍
  2. ViewPager Indicator的使用方法
  3. Alamofire 的使用
  4. iOS之百度导航SDK的坐标转换
  5. TBluetoothLE.OnDisconnectDevice
  6. Android开发之布局--RelativeLayout布局
  7. 源码安装apache及配置转发
  8. C语言基本数据结构之四(线性,对分,二叉树查找及二叉树删除)
  9. 关于Fast Terrain Rendering Using Geometrical MipMapp
  10. android View.isShown() 和 getVisibility() 的区别