文件文件编号备注文件名称文件种类学生学号学生姓名添加时间
图 文件实体
资源文件类型编号名称描述
图 用户类型实体
审核编号结果文件名称文件类型学号 图 审核实体
16
实体与实体之间关系图如下图4-5所示:
N 文件 N 审核 N 老师 用户 1 管理 N N N 属于 1 N 文件类型 N N 成绩 图4-5 实体与实体之间关系
管理 N
4.2逻辑结构设计与实施
逻辑结构设计的其实就是把概念结构设计阶段设计好的E-R图转换为与选用数据库管理系统所支持的逻辑结构。
根据美容院信息管理系统的功能进行分析,本系统需要以下逻辑结构表进行存储数据,其数据库名为:mry,本数据库是用sql 2000创建的,主要包括以下几个表:
表4-1 系统管理员表
字段名 id sno name password post 数据类型 int int varchar varchar varchar 表4-3 文件信息表
字段名 数据类型 说明 说明 管理员表的ID 管理员工号 管理员姓名 系统管理员登录密码 系统管理员职务 17
file_sno file_id File_name file_addname file_xuehao File_type File_addtime int varchar varchar varchar varchar varchar varchar 表4-4审核表
文件编号 文件ID 文件名称 文件上传者 学号 文件种类 文件添加时间 字段名 file_sno file_id File_name file_addname file_xuehao File_type File_score 数据类型 int varchar varchar varchar varchar varchar nvarchar 说明 文件编号 文件ID 文件名称 文件上传者 学号 文件种类 文件审核结果 18
第五章 详细设计
本系统主要由系统管理、用户管理、文件管理、文件分类管理,审核结果管理、审核管理、登陆模块等功能模块组成。其每个模块的详细设计如下:
5.1登陆模块设计与实现
登录页面的功能主要是供合法的用户根据自己的用户类型进行登录。系统登陆流程如图所示。用户身份验证。用户进入系统,首先需要进行身份验证。如果通过了身份验证,则为合法用户,同时其账号名称将会保存在Session对象,Session对象储存的信息是局部的,随用户不同而不同的。当用户访问系统的各个子系统时,系统自动从Session对象中获取用户的名称,而无须将用户的名称作为请求方法、参数名、参数值追加到URL中。这样可以避免用户恶意修改URL中的值而非法访问。Session对象中的变量设置:Session[User_ID]用户名。如果用户在没有登录的情况下选择其它功能模块会退回到登录界面。如果用户已经登录,可以在登录模块进行退出登录的操作。在登录到这个页面或者刷新这个页面的时候,首先要进行一次session的判断。在输入用户名密码后,先确认输入框中有数据,将把输入框中的数据和数据库中的数据进行比较验证。如果一切通过,将产生两个session分别用来存放用户名和用户类型。之后跳转到相应的登录成功的页面。模块设计流程如下图所示。
图4-1 登入验证流程图
19
登陆主界面图如下:
主要代码如下:
<%
String id = request.getParameter(\).trim();
String pwd = request.getParameter(\).trim(); String type = request.getParameter(\).trim();
//response.getWriter().write(\
script>\
ConnSql cs = new ConnSql();
Statement statement = cs.getStatement();
if (type.equals(\管理员\)) { String query = \ + id
+ \ + pwd + \管理员'\; ResultSet res = statement.executeQuery(query); if (res.next()) {
//session.putValue(\ //session.putValue(\ String name = res.getString(\).trim(); session.setAttribute(\, name); session.setAttribute(\, id); res.close();
response.sendRedirect(\); response
20
} else {