• jQuery MiniUI开发系列之:UI和数据分离


    使用MiniUI需要注意:UI和数据是分离的。

    传统的WEB开发,开发者经常将数据库操作、服务端业务、HTML标签写在一个页面内。
    这样会造成开发的混乱,并且难以维护和升级。

    使用MiniUI开发的时候,开发者通常会做两种页面:
    1)数据页面:dataservice.jsp。(也可以是dataservice.aspx)
    2)界面页面

    数据页面用来提供json。它通过request获取提交的信息,进行逻辑判断后,进行相关服务端操作,通常是在数据库查询,或者增加、修改、删除数据。在最后,它把要返回的数据内容,做成一个JSON字符串,通过response返回。
    以下给出一段伪代码:

    1. //查询条件
    2. string key = Request["key"];
    3. ......
    4. //数据库操作
    5. Hashtable result = new TestDB().SearchEmployees(key, pageIndex, pageSize, sortField, sortOrder);
    6. //序列化成JSON
    7. String json = PluSoft.Utils.JSON.Encode(result);
    8. //返回JSON
    9. Response.Write(json);
    复制代码


    界面页面是最终用户看到、操作的页面,至关重要。
    开发者此时可以不用理会数据服务,专心开发界面。比如一个CRUD操作的表格、复杂的表单、弹出面板等。
    当界面呈现完成后,进行数据服务的交互处理。
    通常,表格的查询、分页、排序功能占开发的大部分时间。
    MiniUI的DataGrid极大的简化了这一环节:

    1. grid.setUrl("dataservice.jsp?method=GetEmployees");
    2. grid.load({key: "")}; //查询
    3. grid.gotoPage(0, 20); //分页
    4. grid.sortBy("price", "desc"); //排序
    复制代码


    在其他数据操作场合,使用jQuery的ajax实现数据交互,比如实现一个删除记录的ajax方法:

    1. $.ajax({
    2.     url: "dataservice.aspx?method=RemoveEmployees&id=" + row.id,
    3.     success: function (text) {
    4.         grid.reload();
    5.     },
    6.     error: function () {
    7.     }
    8. });
    复制代码


    这种开发模式带来的好处是:
    1)专注。后台开发者专注于数据库、服务端、业务设计;前端开发可以专注界面细节。
    2)复用。数据页面dataservice.jsp,可以被多个界面页面所调用,而只需要开发一次。
    3)可控。使用firebug、httpwatch等工具,是界面传递的参数不对,还是后台获取的数据错误,一目了然。
    4)上手迅速、低成本、高可靠性。可以让一个新手使用MiniUI开发界面,让有经验的人开发最重要的后台。
    5)易维护、易升级。只需要修改界面,不需要修改后台代码,就可以让系统焕然一新。

  • 相关阅读:
    [LeetCode] 852. Peak Index in a Mountain Array
    [LeetCode] 221. Maximal Square
    [LeetCode] 260. Single Number III
    [LeetCode] 532. K-diff Pairs in an Array
    [LeetCode] 1417. Reformat The String
    [LeetCode] 621. Task Scheduler
    [LeetCode] 454. 4Sum II
    [LeetCode] 18. 4Sum
    [LeetCode] 369. Plus One Linked List
    [LeetCode] 380. Insert Delete GetRandom O(1)
  • 原文地址:https://www.cnblogs.com/gantt/p/4895230.html
Copyright © 2020-2023  润新知