湖北第二师范学院计算机学院本科学士学位论文
4.2 后台总体设计
4.2.1 设计方法
1.MVC简介
MVC本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据你可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。
模型-视图-控制器(MVC)是Xerox PARC在八十年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已被广泛使用。最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。模型-视图-控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。
2.常见的MVC组件
Struts:Apache的,最流行的MVC组件;
Struts2:Apache用Struts和WebWork的组合出来的新产品,目前上升势头强劲; WebWork:这个可是老牌的MVC组件,后来组合成了Struts2,不过自身仍在发展;
Spring MVC:SpringFramework自己整合自己Spring的优势推出的MVC组件,用户也不少;
JSF:这个是一个规范,Sun的和Apache的都有各自的实现。用户量很大,被众多IDE支持;
Tapestry:最彻底的MVC开发框架,丰富的组件资源,重用性很高。组件扮演着控制器Controller的角色,是模式层(Model)中pure-domain objects和包含有组件的HTML模板之间的媒介。大多数情况下,这种方式应用于页面(页面也是Tapestry组件),但是在某些情况中,一个组件拥有自己的模板,包含着更多的组件,并且支持与使用者的互交。页面通过配置一系列属性表达式(Property expressions)连接模式层和表现层。属性表达式使用另外一种开源框架OGNL(Object Graph Navigation Language)。OGNL的开源工程(project)独立于Tapestry,但是在Tapestry中起很重
14
湖北第二师范学院计算机学院本科学士学位论文
要的作用。OGNL主要的目的在于读取和更新对象的Java Bean属性。
3.MVC优点 (1)低耦合性
视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。
(2)高重用性和可适用性
随着技术的不断进步,现在需要用越来越多的方式来访问应用程序。MVC模式允许你使用各种不同样式的视图来访问同一个服务器端的代码。它包括任何WEB(HTTP)浏览器或者无线浏览器(wap),比如,用户可以通过电脑也可通过手机来订购某样产品,虽然订购的方式不一样,但处理订购产品的方式是一样的。由于模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。例如,很多数据可能用HTML来表示,但是也有可能用WAP来表示,而这些表示所需要的指令是改变视图层的实现方式,而控制层和模型层无需做任何改变。
(3)较低的生命周期成本
MVC使降低开发和维护用户接口的技术含量成为可能。
(4)快速的部署
使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中业务于表现形式上。
(5)可维护性
分熟视图层和业务逻辑层也使得WEB应用更易于维护和修改。
(6)有利于软件工程化管理
由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化管理程序代码。 4.2.2 结构设计
15
湖北第二师范学院计算机学院本科学士学位论文
功能模块图,如图4-3功能模块图所示。
新闻发布系统 新闻管理图片新闻后台登陆用户管理退出系统留言管理 添加删除修改添加删除修改添加删除修改添加删除修改4.2.3 功能模块
1.后台登陆,如图4-4 后台登陆窗口图所示。
图4-3 功能模块图
图4-4 后台登陆图
16
湖北第二师范学院计算机学院本科学士学位论文
此页面为后台管理员登陆页面。当管理员登陆时,输入的用户名和密码会与数据库里面的信息核对,如果核对的信息不一致,就不能登陆后台,而且提示出错。若一致就跳转到frame.html页面。
2.用户管理
控制文件,位于control/manuser.php,操作界面如图4-5 用户管理图所示。
图4-5 用户管理图
此页面为管理员管理页面。首先判断$_get变量id是否为空,并且action是否为删除。点击“是”,并且弹出对话框是否删除,确认删除改用,取消操作,点击“取消”。操作完成后,从新加载该模块。
3.新闻管理
控制文件,位于control/mannews.php,操作见面如4-6新闻管理图所示。
17
湖北第二师范学院计算机学院本科学士学位论文
图4-6 新闻管理图
此页面完成对新闻的管理,包括查看、编辑、删除的功能。 系统流程,如4-7系统流程图所示。
是 管理员登陆 否 是否成功 管理操作 退出 操作集合 新闻增改删用户增改删留言增改删日志增改删 图4-7 系统流程图
4.3 前台设计
4.3.1 设计要求
一.软件的智能和记忆功能
1.用户登录界面最好有用户名和ID的记忆,焦点直接定位到密码输入框;
18