大连交通大学2010届本科生毕业设计(论文)
列名 id papersid title type optionA optionB optionC optionD answer 数据类型 int int varchar varchar varchar varchar varchar varchar varchar 长度 4 4 200 50 50 50 50 50 200 允许空 是 是 是 是 是 是 是 是 管理员:用于存放管理员信息。Id 为管理员编号、password为密码。
表3.7管理员表
列名 id password 答案表: 用于存放学生在线做答的答案信息。Id为编号、 quesid为问题编号、 answer为答案、 stuid 为学生编号、pspersid为试卷编号。
列名 id quesid answer stuid pspersid 表3.8考试答案表 数据类型 长度 int int varchar char int 4 4 50 10 4 允许空 是 是 是 数据类型 varchar varchar 长度 50 50 允许空 课程表:用于存储课程信息 id为课程编号、 name为课程名称、 dep为系、 mark 为
标记、detail为课程介绍。
表3.9课程表
列名 数据类型 长度 允许空 17
大连交通大学2010届本科生毕业设计(论文)
id name dep mark detail varchar varchar varchar varchar varchar 50 50 50 50 500 是 是 是 教师表:用于存储教师个人信息。Id为编号、 name为名称 title为职称、 password为密码。
表3.10教师信息表 列名 id name title password 数据类型 char varchar char char 长度 10 50 10 10 允许空 是 上传信息表:用于存放上传文件本地的路径信息。Id为编号、 wid_name为文件所在大的名称、 path为路径、 min_path为具体路径、 sizes为大小、 times为时间、 ip为上传者的机IP
表3.11上传信息表 列名 数据类型 长度 允许空 是 是 是 是 是 是 id wid_name path min_path int varchar nvarchar nvarchar int varchar varchar 4 7 60 60 4 50 20 sizes times ip
3.3 数据库的实现
上述的数据表存储信息,系统进行数据库连接具体实现要核心代码:
public class DataBaseConnection { /** *一个静态方法,返回一个数据库连接
18
大连交通大学2010届本科生毕业设计(论文)
*这样达到了对数据库统一控制的目的 */
//#MySQL 数据库连接信息
//#MySQL 数据库驱动程序
//String MySQLDriver=\
//#MySQL数据库连接字符串。
//#upload 为数据库名,user为登录用户名,password为登录密码。 //String
MySQLURL=\:mysql://localhost:3306/upload?user=sa&password=&useUnicode=true&characterEncoding=GBK\
//#SQL Server 数据库连接信息 //#SQL Server 驱动程序
//String SQLDriver=\
//#SQL Server 数据库连接字符串
//#upload 为数据库名,user 为登录用户名,password 为登录密码。
//String SQLURL=\ public static Connection getConnection() {
Connection con=null;
String SQLDriver=\ String
SQLURL=\
try { Class.forName(SQLDriver).newInstance(); con=DriverManager.getConnection(SQLURL); } catch(Exception e) { e.printStackTrace(); } return con; } };
//在其他文件里面就可以直接调用Connection con=DataBaseConnection.getConnection(); 来获得数据库的连接
19
大连交通大学2010届本科生毕业设计(论文)
第四章 详细设计
4.1 管理员的登录模块设计与实现
管理员用设定好的用户名和密码,可以登录到系统 用户管理员的核心代码:
jsp:useBean id=\引用login类
String sql=\ String kind=ss.getKind(); String pw=\ResultSet rs =null; String id=ss.getId(); System.out.println(\进入验证\ sql=\SQL用查询的语句 System.out.println(); rs=db.executeQuery(sql); //查询用户信息 if(rs.next()){ pw=rs.getString(\ if(ss.getPassword().trim().equals(pw)) //判断用户是否登录成功 { System.out.println(\进入验证====通过验证\ session.setAttribute(\在session中缓存用户信息 int flag=ss.getFlag(); session.setAttribute(\ response.sendRedirect(\重定向用户请求 out.print(flag); 20 大连交通大学2010届本科生毕业设计(论文) } else { String message= \登陆失败,用户名或密码有误!!\session.setAttribute(\response.sendRedirect(\ %> 管理员可以在本页面登录: 图5-1管理员登录 4.2 管理员主界面设计与实现 该模块主要实现用户添加,删除,修改用户信息等功能,该模块是通过java操作数据库,跟教学展示、查找模块相似,所有的数据库操作都封装到servlet中,这样保证了数据的安全性。这个模块值得一提的是教学图片上传功能,文件的上传功能在基于B/S的开发模式中非常普遍。同其他开发工具相比较,JSP对文件的上传支持并不是很完美,它既不象ASP那样一定需要使用组件来完成。JSP实现文件上传的实现方式是这样的:使用ServletRequest类的getInputStream()方法获得一个客户端向服务器发出的数据流,然后处理这个数据流,从中分析、得到文件上传中传递到服务器的各个参数和数据,然后将其中的文件数据存储为一个文件或插入到数据库中。通常JSP页面中不 21