《jsp教务系统及毕业设计答辩稿.ppt》由会员分享,可在线阅读,更多相关《jsp教务系统及毕业设计答辩稿.ppt(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、JSP教务管理系统论文及毕业设计答辩稿 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望前 言v目的:改进传统的手工管理方式,减轻教师的工作量,提高效率,为师生之间交流信息提供一个便捷的平台。一 系统的开发平台和运行环境v操作系统:Windows 2000/xpv使用到的语言:HTML,CSS,JavaScript,Java,JSPvJava Development Kit(JDK)版本:jdk 1.4.1/1.5v服务器软件:Tomcat 4.0/5.0v数据库软
2、件:MYSQL 3.23/4.0v其他辅助工具:JCreator3.50,Dreamweaver2004二 系统分析与设计管理管理者:用户对象被管理者:数据资料 对于一个管理系统,必然要考虑两方面的因素:管理者和被管理者。而系统本身的作用,就是把这两类对象联系起来,向用户对象提供一个管理各种资料信息对象的平台。v通过这样一个管理系统,上层用户可以方便的查询、管理下层的资料数据。系统应用关系图 2.1 系统分析系统用户数据资料 2.1.1 数据资料对象分析v数据资料对象:是系统最终要展示给用户的内容,根据用户对象的功能需求,归纳为六个数据表:新闻通知(News)教师及其帐号信息(Teacher)
3、课程信息(Course)班级信息(Class)学生成绩信息(Result)管理员帐号信息(Manager)2.1.2 系统用户分析v用户对象:即系统的使用者,分为三种,每一种用户都有相应的功能要求。学生用户 教师用户 管理员用户 2.1.2 系统用户分析(一)学生用户v功能比较简单,主要是浏览信息。查看新闻通知;查看教师信息;查看课程和班级信息;查看课程成绩。2.1.2 系统用户分析(二)教师用户v教师用户的功能稍微复杂一些。他需要和管理员进行一定互动的交流,而且必须有操作部分信息资料的权限,但又必须对他的权限进行限制。除学生的浏览之外,教师对象还具有如下功能:教师登陆;发布新闻通知,并可以修
4、改、删除自己发布的通知;修改自己的个人信息(包括密码等);修改自己所带课程和班级的信息;上传管理员指定的各种资料;上传任课课程的学生成绩,并导入数据库。2.1.2 系统用户分析(三)管理员用户v管理员用户几乎可以操作一切被管理的对象数据,具有最广泛的权限,他需要的功能最多,也最复杂。除浏览外,管理员对象必须具有如下功能:管理员登陆发布新闻通知,并可以修改、删除所有已发布的通知添加教师用户,并可以修改、删除其具有的各种信息添加课程,并可以对课程信息进行修改、删除为课程添加班级,并为班级指定任课教师对课程成绩进行管理,包括添加、修改和删除对教师上传的资料进行管理 2.2 系统框图 2.3 各模块详
5、细设计v系统的三类用户所具有的各个功能中,每个功能又需要几个小的功能块组成。从Web页面的角度考虑,每个功能模块,要好几个页面的组织配合才可以完成,因此,页面框架的组织结构是比较复杂。v但是,其实有一些模块实现的功能是相同或相近的(比如教师发布通知和管理员发布通知的功能)。在具体的实现时,这些功能模块可以相互借鉴重复的代码,甚至将其融合进同一页面,以简化页面结构。三 系统功能的实现v实现思路:把基本功能封装成JavaBeans类,然后以此为基础实现JSP页面功能。3.1 JavaBeans技术(1)很多功能在系统的各个模块中会经常用到(2)分离代码的功能部分和输出显示部分(3)便于系统维护、更
6、新和升级 3.2 对常用的基本方法和常量的封装(1)Database数据库基本操作类主要是和数据库操作有关的底层的方法和属性。(2)Tools常用工具类封装了一些系统中用到的对字符串进行处理操作的方法。(3)Constent常用常量接口系统中使用的一些常量,主要是一些系统中文件的存放地址信息。3.3 数据库操作的实现(一)数据库操作的封装v这里对数据库操作的封装,是在前面对数据库基本操作的封装的基础上进行的更高一级的封装。在系统中,我们以这些数据表为对象,为每一个表建立JavaBeans类,其中封装了所有与该数据表相关的属性信息和操作方法。这六个JavaBeans类有:Class类、Cours
7、e类、Manager类、News类、Result类和Teacher类。它们分别来处理与之对应的数据表。每一个类中均包含了操作数据表需要的属性、成员变量和方法。属性和成员变量主要有数据库名称、数据表名称、数据表中的列名称、到数据库的连接等。方法主要包含了插入数据、更新数据、删除数据、查询数据、建立连接、关闭连接等。3.3 数据库操作的实现(二)在JSP页面中实现v在前面封装的基础上,要实现对数据表的某种操作,只需调用对象中的相应方法就即可。这些操作一般都分为四个步骤,下面以查询新闻通知为例来介绍一下这四个步骤。(1)利用JSP中的useBean标签定义一个JavaBeans对象的实例。相当于声明
8、了一个该类的实例变量。(2)建立到数据库的连接。news.getConnection();(3)调用相应的成员方法来实现操作。news.select();(4)关闭到数据库的连接news.closeConnection();3.4 文件操作的实现(一)文件操作的封装v系统中对文件的操作主要有对附件的操作和对文件夹的操作两类。附件(Adjunct)文件夹(Directory)文件上传upload()文件下载download()文件删除delete()判断文件是否存在exists()获取子文件夹列表getSubdirNameList()获取子文件列表getSubFileList()创建子文件夹ma
9、keNewDirectory()3.4 文件操作的实现(二)在JSP页面中实现v对文件的操作不涉及数据库部分,是直接对本地和服务器上的文件进行的操作。(1)使用useBean标签定义一个Adjunct对象的实例。(2)设置属性值。下载或删除文件时只需设置好filepath和filename属性。adj.setFilePath(adjunct.COURSE_SYLLABUS_PATH);adj.setFilename(request.getParameter(cor_syllabus_url);上传时还要设置temppath、tempfilename和renametype属性。(3)步骤3:调用
10、成员方法实现操作adj.upload();或者 adj.download();或者 adj.delete();3.5 登陆功能Login类它以前面的数据库操作类为基础,面向具体的功能应用。主要方法有两个:getLogin()和getLogout()。3.6 分页功能Page类对于一些资料信息,有时需要把他们分成多个页面来显示,为此,我们用一个Page类来标志需要的页面信息。Page类中包含了四种属性,具体如下:private int rowcount;/总记录数private int pagesize;/每页显示的记录数private int showpage;/当前显示的页码数private
11、 int pagecount;/分页之后的总页数 3.7 Excel文档的解析(一)对POI包的处理vPOI包是Apache组织发布的一个工具包,用于解析Excel、Word等格式的Micosoft公司OLE文档。vPOI包中的HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell等类,全面的提供了对Excel文档的工作薄、工作表、行和单元格的支持。根据系统的具体需要,我以POI包中的HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell四个类为基础,封装出四个新的类:Workbook类、Sheet类、Row类、Cell类 3.7 Excel文档的解析(二)导入Excel成绩文档数据v在前面对POI包中某些类再次处理的基础上,完成Excel文档的导入。v准备导入的Excel文档必须符合一定的格式要求。Excel成绩文档格式范例 3.8 毕业设计过程中遇到的一些问题(1)null空指针问题(2)JSP页面中中文的显示问题(3)MySQL数据库的中文字符存储问题(4)HTML网页中文字段落的显示问题(5)代码结构的优化四 结果及结论v系统的设计v程序的调试v系统演示:谢谢各位老师!