zoukankan      html  css  js  c++  java
  • 基于Extjs+SpringMVC+MyBatis+Oracle的B/S信息系统简化开发思路

    要在上层简化就得有下层强大的架构作为支撑,通过采用企业级的各种框架,虽然学习成本高一些,但用好了效率也自然高。

    数据层简化:

    首先所有表都有名称为ID的主键字段。有与表同名的序列作为自增key。

    数据层按数据用途分为三大类别,配置中心(CC)、数据中心(DC)、业务中心(BC)

    配置中心对基本配置表的CURD提供一个通用的操作支持,

    数据中心对通用的查询、分页、排序提供支持。

    业务中心对差异化的业务调用提供处理。

    1.基于SpringMVC+MyBatis提供一个通用的Ajax方式的CURD操作接口,表名(为了安全可取别名)作为CURD控制器的一个固定路径变量

    对于Create来说,只需要在前台配置好与数据库表字段对应的同名表单项,即可对任意数据表进行添加行操作。

    对于Update来说,只需要在前台配置好与数据库表字段对应的同名表单项,即可对任意数据表以ID为条件进行更新操作。

    对于Delete来说,只需要传入要删除的ID,即可对任意数据表的指定行进行删除。

    对于Read来说,要传入查询字段名称和值的列表,组合出查询条件(不分页读排序由前台Store负责即可)。

    2.提供通用数据查询接口(DC),

    对于大部分Read(支持分页)来说,要传入查询字段名称和值的列表(增加分页的页码和条数参数),组合出查询条件;还可以传入排序条件(分页无法在前台排序)。

    3.对于无法通过CURD接口和DC进行的数据访问和操作,且是单一步骤的查询、添加、修改、删除操作,按模块编写MyBatis Dao定制接口,满足各种参数多种形式的数据操作。

    4.对于复杂的数据库操作(非查询类,比如一次业务处理有1个以上的数据过程处理)采用Oracle存储过程。

    即提高了数据库代码的编写效率,又避免了MyBatis中增加过多复杂的底层数据库操作接口。

    SpringMVC的Service层对数据库的业务调用也简化了(都跑到PL/SQL里了,数据库专用开发语言比Java/MyBatis开发高效多了)。

    通过以上四类数据接口的分工,实现最少的业务代码编写。

    前端简化:

    基于Extjs MVVM架构的webApp,优点就不用说了,后台分层前台自然也要分层。

    导航菜单主菜单和子菜单都可以动态建立,子菜单通过设置要打开的widget的xtype实现可配置。

  • 相关阅读:
    简述Javascript中call apply
    tomato固件 路由简单玩 BT 电驴 amule highId python 其实dd wrt也一样 含 amule_2.2.61_mipsel.ipk下载
    Ubuntu10.10 下usb鼠标不动了
    Struts2源码分析 初步1 如何入手以及做了哪些初始化
    ubuntu eclipse easyexplore 替代品 open explorer
    struts2 src study 准备工作 和 略谈 如何读开源代码(Java)
    python 解析XML expat方式
    正则表达式基础 多选结构 加不加括号大不同
    UVa1586,Molar Mass
    UVa12100,Printer Queue
  • 原文地址:https://www.cnblogs.com/coolzdp/p/7702172.html
Copyright © 2011-2022 走看看