1.osframe后台开源框架架构概述

开源项目名称:
    osframe管理系统
托管地址:
    http://git.oschina.net/haizicq/osframe
主要技术:
    spring mvc、spring、hibernate、angular js、seajs、bootstrap、shiro
框架介绍:
    本框架是一个基础后台开发框架,基于springmvc+spring+hibernate搭建,前端采用angular js+sea js +bootstrap展示,基于shiro的权限管理和登录控制。基础框架中包含了用户管理、权限管理等基础模块,提供了简单的首页门户,能够快速的实现新项目的搭建。
框架特点:
    支持电脑和手机界面的自动智能切换。前端

技术交流群:330710190(OSFrame技术交流群) 欢迎你们加入,共同探讨使用过程当中的问题。java

框架基本构思:
    一、基本思路:使用模块化的思想来开发项目,按模块进行开发,以便于代码管理和移植。
    二、基础增删改查封装:子模块中的类继承基础模块中封装的基础方法就能直接实现基础的增删改查功能
    三、权限注解:经过注解的方式实现功能权限控制,直接开发中实现,而没必要在项目实施中去纠结功能url配置
    四、设备自适应展现:前端页面自动适配设备屏幕尺寸展现,只须要引入公共的页面头部和尾部jsp片断
    五、模块耦合处理:为了减小模块间的耦合关系将一些基础的功能抽象为接口,由对应的子模块实现,其余模块只须要依赖基础框架模块,这样很是便于更换模块git

架构决策:
    一、后端采用主流的springmvc+spring+hibernate架构,可快速实现增删改查,虽hibernate在大数据处理上有必定的性能问题,但通常数据量的功能上是彻底能够采用的,而通常项目中数据量也不会很是大,就算数据量大也只存在于少部分表中,因此总体项目框架仍是推荐采用hibernate,当须要使用大数据量业务时再集成mybatis进来处理。若是多数表数据都很是大的话,就不推荐使用本框架了。
    二、权限控制采用shiro框架,小而简单的实现登录和权限控制
    三、bootstrap作页面UI框架,在适配屏幕方面有很不错的表现
    四、angular js 是一个优秀的单页面框架,项目本着构建一个没有那么多frame嵌套的框架,这是一个很不错的选择。 另外一方面它的指令功能,至关于后端的标签功能,很是便于开发不少通用功能,而没必要像java taglib那样跟java代码依赖,不便于移植。
    五、sea js 当时也在考虑requirejs,多是受到:RequireJS 是没有明显的 bug,seajs 是明显没有 bug。这句话的蛊惑吧,因为angular js须要一次性的加载完全部的js,这显然不利于大型项目模块的开发,因此引进seajs实现按需加载模块。web

当前功能模块
    一、用户管理(users)
    二、权限控制(auth)
    三、用户登录(login)
    四、样例参考模块(demo)spring

框架代码模块
    一、工具类模块(util)
    二、基础框架模块(framework)
    三、标签模块(taglib)
    四、用户管理(users)
    五、权限控制(auth)
    六、用户登录(login)
    七、样例参考模块(demo)bootstrap

模块间的依赖
    一、util模块为框架提供工具类,不依赖与框架任何模块,若是须要依赖框架功能的工具类,放到框架或模块的util包中
    二、framework模块为框架基础模块,仅依赖于util模块
    三、taglib模块为项目提供标签框架,依赖 util和framework
    四、用户管理 依赖于:util和framework
    五、权限管理 依赖于:util、framework、用户管理
    六、用户登录 依赖于:util和framework
    七、样例参考模块 依赖于:util、framework、用户管理
    八、web-view 依赖于:全部项目模块,另taglib标签模块通常只有web展示层依赖后端

相关文章
相关标签/搜索