大连交通大学2015届本科生毕业设计(论文)
系统功能简单流程如图3-3所示。
图3-3 功能简单流程
退出系统 查看课题 修改信息 管理课题信息 管理个人信息 N 用户登录 帐户验 验证成功 Y 输入正确地址后,进入登录界面,输入用户名和密码之后,后台进行用户验证,如果错误,会在登录界面提示错误信息,如果正确的话,进入系统主页面,可以管理个人信息及课题信息,查看信息,也可以对个人信息、课题信息进行修改,进行一系列操作之后,用户可以退出系统。
8
大连交通大学2015届本科生毕业设计(论文)
第四章 数据库设计
4.1 数据库的需求分析
为便于学生使用该系统,数据库中需存储以下内容:用户信息,课题信息,学生信息,课题与学生关系信息等信息。
要求做到准确、稳定并快速的完成功能操作,并做到界面要简单明了,易于操作,利于维护。
4.2 数据库的概念设计
从概念设计理念中得到的概念模型是真实世界的问题的描述,是不依赖于硬件环境的。
设计模型充分的反映了各功能模块的结构及相关信息改动情况、数据之间的相互制约,以及各功能对数据的储存、查询和修改的要求等。E-R模型为其中的一种展示方式,方法明确各单元所含的各种实体及属性、实体间的关系等。
4.3 实体属性图设计
E-R图也称实体-联系图,它提供了展现实体类型、属性和联系的方法,是用来描述真实世界的概念模型,E-R图可以充分把概念模型展示出来,可以让人们把抽象的关系看得更加仔细、明了。
E-R图的作用是在理念下设计数据库结构,区分实体及实体之间的关系。用矩形框来代表实体,椭圆框代表属性,菱形框表示关系。数据库设计中采用了E-R图建模,可以更加充分展现出概念设计。
实体属性图是实体与属性关系模型的展示,是对实体属性进行的形象描述,课题实体属性图如图4-1所示。
图4-1 课题信息属性图
课题信息 课题号 课题名 上传者 课题信息包括课题号,课题名,上传者句号。
9
大连交通大学2015届本科生毕业设计(论文)
学生实体属性图如图4-2所示。
学生信息 图4-2 学生信息实体属性 图
学号 学院 学生姓名 性别 学生实体包括学生学号、学生姓名、学生性别、学生所在学院。 用户信息属性图如图4-3所示。
用户信息 用户名 密码
图4-3 用户信息属性图
用户信息包括用户名和用户密码。
4.4 属性图向关系模型的转换
经对数据库模块分析以及对系统结构的选择,本系统数据库采用Mysql作为后台数据库,并设计5张数据表。数据结构定义如表4-4所示。
表4-4 数据结构定义
数据结构名 用户信息表 学生信息表 课题信息表 学生与课题关系表 含义说明 用户信息 定义了学生的有关信息 定义了毕业设计课题有关信息 定义了学生和课题关系 组成 用户名,用户密码 学生学号,学生姓名,性别,学院 课题号,课题名,课题上传者 学生学号,课题号 10
大连交通大学2015届本科生毕业设计(论文)
表4-5 用户信息表(user表)的结构
字段名称 数据类型 varchar varchar varchar varchar varchar 长度 允许空 否 否 否 否 否 主键 主键 否 否 否 否 说明 用户名 u_name u_password u_stu_name u_sex u_college 10 20 20 20 20 用户密码 学生姓名 学生性别 学生学院 用户信息表: 用户名(u_name)、用户密码(u_password)、学生姓名(u_stu_name)、学生性别(u_sex)、学生学院(u_college)。
表4-6 课题信息(project表)的结构
字段名称 pro_num pro_name pro_uploader 数据类型 varchar varchar varchar 长度 8 50 20 允许空 否 否 否 主键 主键 否 否 说明 课题编号 课题名 课题上传者 课题信息表:课题编号(pro_num)、课题名(pro_name)、课题上传者(pro_uploader)。
11
大连交通大学2015届本科生毕业设计(论文)
第五章 系统实现
5.1 数据库的连接
用户可以对数据库进行查询、插入、更新和删除操作等,该中间件位于服务器端,用户对数据进行一系列操作后,将处理结果从服务器返回到浏览器,用户可以通过页面进行查看。这个过程如图5-1所示。
浏览器 Web服务器 数据库服务器 图5-1 数据库访问结构
数据库 JDBC(Java Data Base Connectivity,java数据库连接)是一种用来执行SQL语句的Java API。应用jdbc之后,对数据进行SQL语句操作就变得很简单了。我们在本系统中应用此种方法连接了Mysql数据库。
JDBC数据库建立连接,首先要加载此数据库驱动程序。连接数据库的第一步骤就是加载JDBC驱动程序。完成载入驱动程序的步骤后,必须使用getConnection()静态函数,取得与数据库间的连接对象。运行SQL语句来操作数据库,而执行后的结果通过连接对象来才可以取得。当取得连接后,还必须取得Statement对象才可以对数据库进行SQL指令。Statement主要实现了两个功能:运行SQL语句以及取得运行后的结果。
数据库连接流程,如图5-2所示。
建立是否成功 否 是 建立数据库连接 执行SQL操作 SQL 是 否出错 是 否 返回错误信息 出错处理 建立JDBC桥 返回执行结果 图5-2 数据库连接流程
12