在设计表的过程中,由于每个表设计为独立的表,所以没有设计主键。系统处理数据库的数据,就根据表内字段的内容来进行查询,删除,更新,插入等。 http://www.paper51.com
4总体设计 内容来自论文无忧网 www.paper51.com
4.1系统功能设计 内容来自论文无忧网 www.paper51.com 本系统分为学生操作界面、教师操作界面和管理员操作界面。学生界面能完成如下操作。 内容来自www.paper51.com (1) 个人信息:通过该功能模块,学生能查看自己的学号和班级等信息。 copyright paper51.com (2) 网上教学:通过该功能模块,学生能进行选课,及其对已选课程的授课教师的评教。 copyright paper51.com (3) 其他:通过该功能模块,学生能修改密码,保证用户的安全性,以及能够退出系统。 http://www.paper51.com 教师界面能完成如下操作: 内容来自www.paper51.com (1) 个人信息:通过该功能模块,教师能查看自己的教师编号和所在院系等信息。 paper51.com (2) 信息管理:通过该功能模块,教师能够查看学生对自己所授课程的评分和留言。 内容来自www.paper51.com
(3) 其他:通过该功能模块,教师能修改密码,以及能够退出系统。 http://www.paper51.com
管理员界面能完成如下操作: 内容来自www.paper51.com (4) 学生管理:通过该功能模块,管理员能够查看学生信息,以及对学生的添加、更新、删除。 内容来自论文无忧网 www.paper51.com (5) 教师管理:通过该功能模块,管理员能够查看教师信息,以及对教师的添加、更新、删除。 paper51.com (6) 课程管理:通过该功能模块,管理员能够查看课程信息,以及对课程的添加、更新、删除。 内容来自www.paper51.com (7) 统计:通过该功能模块,管理员能对学生及其教师同行的评分进行查看,以及被评教师在院系的得分排行榜。 内容来自www.paper51.com (8) 其他:通过该功能模块,管理员能够对学生、教师、管理员的密码修改,以及能够退出系统。 paper51.com 4.2 系统功能图 copyright paper51.com 通过系统功能设计,画出系统功能图如下: copyright paper51.com http://www.paper51.com 图5 系统功能图 paper51.com 4.3 系统功能流程图 paper51.com 系统的功能流程如下图: http://www.paper51.com
内容来自论文无忧网 www.paper51.com 统计结果 内容来自www.paper51.com 内容来自www.paper51.com 图6系统功能流程图 copyright paper51.com
5 详细设计和实 http://www.paper51.com
5.1 系统页面主体设计 内容来自www.paper51.com 系统登陆页面设计如图: 内容来自论文无忧网 www.paper51.com
paper51.com
图7登陆界面图 copyright paper51.com
学生页面设计如图: copyright paper51.com
内容来自www.paper51.com 图8学生界面图 内容来自www.paper51.com 5.2 数据操作类 copyright paper51.com 基本的数据库操作都被封装到DB类,该类对数据库访问的方法包括了数据库的连接、查询、插入、删除、更新等操作。在开发过程中,涉及到数据库的操作时,可以直接调用DB的方法。这样可以提高开发人员的效率,充分体现了组件的重用性。类代码如下: 内容来自www.paper51.com package Javabeans; copyright paper51.com import java.sql.*; paper51.com public class DB { paper51.com
private Connection con; copyright paper51.com private Statement stm; 内容来自www.paper51.com private ResultSet rs; 内容来自www.paper51.com private Stringclassname="com.microsoft.jdbc.sqlserver.SQLServerDriver"; 内容来自论文无忧网 www.paper51.com
private Stringurl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=教师教学质量评估系统"; paper51.com
public DB(){} 内容来自www.paper51.com public ConnectiongetCon(){ 内容来自论文无忧网 www.paper51.com try{ copyright paper51.com Class.forName(classname); 内容来自论文无忧网 www.paper51.com } 内容来自www.paper51.com catch(ClassNotFoundException e){ 内容来自论文无忧网 www.paper51.com e.printStackTrace(); http://www.paper51.com } copyright paper51.com try{ 内容来自论文无忧网 www.paper51.com con=DriverManager.getConnection(url,"sa",""); http://www.paper51.com } http://www.paper51.com catch(Exception e){ 内容来自论文无忧网 www.paper51.com
e.printStackTrace(System.err); paper51.com con=null; http://www.paper51.com } http://www.paper51.com return con; copyright paper51.com } copyright paper51.com
public Statement getStm(){ copyright paper51.com
try{ 内容来自www.paper51.com con=getCon(); 内容来自www.paper51.com stm=con.createStatement(); copyright paper51.com }catch(Exceptione){e.printStackTrace(System.err);} http://www.paper51.com return stm; copyright paper51.com
} http://www.paper51.com
public StatementgetStmed(){ 内容来自www.paper51.com
try{ 内容来自论文无忧网 www.paper51.com
con=getCon(); copyright paper51.com stm=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); http://www.paper51.com }catch(Exceptione){e.printStackTrace(System.err);} 内容来自www.paper51.com
return stm; 内容来自www.paper51.com
} paper51.com public ResultSetsearch(String sql){ 内容来自论文无忧网 www.paper51.com if(sql==null)sql=""; 内容来自www.paper51.com System.out.println("sql:"+sql); copyright paper51.com try{ 内容来自论文无忧网 www.paper51.com stm=getStmed(); http://www.paper51.com rs=stm.executeQuery(sql); 内容来自www.paper51.com } paper51.com catch(Exception e){e.printStackTrace();} 内容来自论文无忧网 www.paper51.com return rs; paper51.com } 内容来自论文无忧网 www.paper51.com public intdosql(String sql){ http://www.paper51.com
intnum=-1; http://www.paper51.com if(sql==null)sql=""; 内容来自www.paper51.com try{ paper51.com stm=getStmed(); copyright paper51.com num=stm.executeUpdate(sql); 内容来自www.paper51.com } copyright paper51.com catch(Exception e){e.printStackTrace();num=-1;} http://www.paper51.com return num; http://www.paper51.com } http://www.paper51.com public void closed(){ 内容来自www.paper51.com try{ paper51.com if(rs!=null)rs.close(); paper51.com
} 内容来自www.paper51.com
catch(Exceptione){e.printStackTrace();} copyright paper51.com try{ paper51.com
if(stm!=null)stm.close(); http://www.paper51.com } copyright paper51.com catch(Exception e){e.printStackTrace();} 内容来自论文无忧网 www.paper51.com try{ http://www.paper51.com if(con!=null)con.close(); 内容来自论文无忧网 www.paper51.com } copyright paper51.com
catch(Exceptione){e.printStackTrace();} copyright paper51.com
} 内容来自论文无忧网 www.paper51.com } 内容来自www.paper51.com 5.3 学生界面及其基本功能的实现 内容来自www.paper51.com 5.3.1 学生登录 copyright paper51.com 在使用本系统时均需要登录后,才可使用,登录时会让你输入用户名,及用户密码。用户名均是管理员分配给每位用户的且具有唯一性,用户自己不可更改,但是用户自己可以更改密码。在登录时,系统根据你输入的用户名和密码,给出不同的提示信息,如果用户名和密码正确,将会提示进入学生主页面进行操作,如果用户名和密码不正确,将会提示返回登陆主页面重新登陆。提示部分代码如下: paper51.com <% int n=0; 内容来自论文无忧网 www.paper51.com String sql="select * fromstudent where 学号='"+username+"'and 密码='"+userpassword+"'"; http://www.paper51.com ResultSet rs=oo.search(sql); copyright paper51.com
rs.last(); http://www.paper51.com if(rs.getRow()==0){%> copyright paper51.com <ahref="/netteaching/index.jsp" class="STYLE1">[返回]</a> 内容来自论文无忧网 www.paper51.com <%} paper51.com else{%> 内容来自论文无忧网 www.paper51.com
<a href="index.html"class="STYLE1">[进入]</a> 内容来自论文无忧网 www.paper51.com <%}%> 内容来自论文无忧网 www.paper51.com 其中username和userpassword是利用JSP中request对象的getParameter方法从表单中读取的值,同时在代码设计中将值传递给JSP中的session对象,方便在其他页面中使用。 paper51.com
5.3.2 个人信息显示 copyright paper51.com 学生登录后,查看个人信息,将会显示学生的学号,班级,班名等信息,此实现比较简单,就不重点阐述了。 paper51.com 5.3.3 网上选课 copyright paper51.com 学生选择一门要学习的课程,选择后将结果录入到选课记录表中,其中已经选择了的课程不能重复选择。实现过程中对数据库的操作是利用IN把course、teacher、student 3个表联系起来进行查询将得到学生所需要学习的课程信息显示在页面上供学生进行选课,同时利用超链接传递课程编号、课程名称的值,以及利用session对象的getAttribute方法得到的学号一起录入到选课记录表中。关键代码如下: 内容来自论文无忧网 www.paper51.com (1) 课程的显示 内容来自www.paper51.com
Stringcourse_code=""; http://www.paper51.com Stringcourse_name=""; paper51.com Stringsql="select * from course where 课程名称 in(select 所授课程 from teacher where 所带班级 in(select 班名 from student where 学号='"+session.getAttribute("username")+"'))"; 内容来自www.paper51.com try{ paper51.com ResultSet rs=mych.search(sql); http://www.paper51.com while(rs.next()){ http://www.paper51.com course_code=rs.getString("课程编号"); copyright paper51.com
course_name=rs.getString("课程名称"); http://www.paper51.com
|