2。3 系统可行性分析
2。3。1 技术可行性分析
(1)MVC模式简介
MVC模式(Model View Controller),是视图层(View)、控制器层(Controller)、模型层(Model)的缩写,是一种软件架构模式和设计规范,用一种界面显示、业务逻辑和数据分离的方法来设计系统,用一个模块来聚集业务逻辑,在修改视图层的布局结构时不需要修改业务逻辑[2]。模型层(Model)表示的是应用的核心,是应用程序中用来进行业务逻辑处理的部分,通常是负责对数据库中的数据进行处理;视图层(View)表示的是用于显示数据的部分,是一个和用户交互的界面,用来向用户展示数据的界面;控制器层(Controller)表示的是应用中用来处理用户交互的部分,控制器存在的目的是用来使模型层和视图层同步,将模型层的改变同步更新到视图层。
MVC模式的优点:文献综述
①耦合性低:将业务逻辑和视图层分离,这样就可以在修改视图层部分的代码之后而不需要重新控制器层和模型层部分的代码。
②重用性高:使用MVC模式的应用程序,服务器的同一段代码可以被样式不同的视图所访问,因为模型和视图是一对多的关系,这样能够就提高的代码的可用性和降低了代码的重复性。
③有利于软件工程化管理:使用MVC模式,将应用程序分成不同的层,每层的应用程序都具有一些相同的特征,便于使管理程序代码变得工具化、工程化。
④可维护性高:将业务逻辑层和视图层分离之后,之间的耦合性降低,使得应用程序的管理维护更加方便。
(2)Spring框架简介
Spring是一个开源的Web框架,是由Rod Johnson等开发的,是支持运行JavaBean构件的容器,提供了依赖注入的构件组装机制和切面编程的事务管理等[3]。
图2-1 Spring各模块组成
Spring框架有很多特性,这些特性被分在了上图所示的六个模块中。Core层是框架的容器,是框架中最基础的部分,主要特性是依赖注入和IoC(控制反转)。DAO层是JDBC抽象层,不再需要JDBC那样冗长的编码和数据库厂商提供的特有的错误代码。而且,DAO层还一套更好的事物管理方法。ORM层提供了一些“对象/关系”映射,可以混合Spring的特性进行映射。MVC封装包实现了Web应用的MVC,并不仅仅只是一种传统的实现,提供的分离模型比较清晰,可以将Spring的其他的特性相结合。
(3)MyBatis框架简介
MyBatis 原本是iBatis,是apache的一个开源项目, 能够支持普通SQL查询、高级映射和存储过程,是一个持久层框架,2010年迁移到了google code,改名为MyBatis,之后2013年转到Github。MyBatis主要DAO和SQL Map两大类[4]。MyBatis几乎消除了所有的JDBC代码、手工设置参数和检索结果集。
MyBatis通过简单的XML或者注解来配置和映射,将Java的普通对象和接口映射为数据库中的记录。基础支撑层、API接口层、数据处理层是MyBatis的三层功能架构。基础支撑层包含配置加载、连接管理、缓存处理和事务管理,支撑数据处理层;数据处理层,具体负责的SQL解析、SQL执行和处理结果映射等等;API接口层,为外部使用SQL功能提供接口。
(4)AngularJS框架简介
AngularJS是一款来自Google的前端JS框架,该框架已经被应用到Google的多款产品中,这款框架最核心特性有:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等等[5]。
当浏览器访问使用AngularJS的HTML页面时,浏览器进行了以下的操作[6]:
①加载HTML页面并解析为DOM;
②加载脚本angular。js;
③等待DOM事件触发AngularJS;