业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。
控制层(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
2.3 JSP(JAVA SERVER PAGE)
基于文本的WEB组件,在HTML代码中嵌入JAVA代码来实现动态内容的输出的一项技术。
1)利于将创建内容和表示内容的代码分离开来;
2)标签技术更容易使人理解和使用,组件重用;
3)动态内容与静态内容的分离;
4)本质上还是servlet,在服务器端被转换成servlet;
5)适合多层WEB应用开发体系结构 。
2.4 Struts框架
Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开放源码的framework。采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架[4]。
Struts有如下的主要功能:包含一个controller servlet,能将用户的请求发送到相应的Action对象[5]。JSP tag库,并且在controller servlet中提供关联支持,帮助开发员创建交互式表单应用。提供了一系列实用对象:XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息[6]。
Struts优点:
1)集中式的、基于XML的配置方式,避免了Java硬编码;
2)提供了Form bean的方式封装用户请求的参数,使其在请求阶段方便使用;
3)自定义了很多有用的标签,如Bean tags可以方便操作Bean中的内容;HTML tags 可以让你轻松初始化表单域等内容;
4)增加了表单验证功能。
3 系统设计 3.1需求分析
本系统的用户可分为管理员,注册用户和普通用户(即未注册用户)三类。考虑到系统的安全性,本系统共分成两个界面:一个界面用于注册登录,主要进行基本资料的修改、日志分类和日志内容的管理以及查询等,进入方式为主页默认显示;另外一个界面用于后台管理员登录,主要负责审核用户权限、系统新闻维护、公告维护等。
从总体上看,系统主要需要实现了下列功能:
对管理员来说,包括用户管理、新闻维护、公告维护。
l 用户管理:管理员可以通过进入用户管理模块对用户进行相关的操作。首先从查询页面输入查询条件,结果在查询模块下方分页显示,管理员可以在查询结果中对用户进行相关操作。主要包括用户信息的浏览,注册用户的权限的审批和停用,用户的删除。
l 新闻维护:管理员可以对前台首页的本站新闻进行维护,包括新闻的添加,修改和删除。
l 公告维护:管理员对首页公告进行更新。