教学管理系统之学生数据管理子系统_第1页
教学管理系统之学生数据管理子系统_第2页
教学管理系统之学生数据管理子系统_第3页
教学管理系统之学生数据管理子系统_第4页
教学管理系统之学生数据管理子系统_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 西安科技大学高新学院毕业设计(论文)任务书系 别:机电信息学院专 业:计算机科学与技术学 生 姓 名:学 号:设计(论文)题目:教学管理系统之学生数据管理子系统起 迄 日 期:2013年 10月8 日 2014年 1月10日设计(论文)地点:西安科技大学高新学院指 导 教 师:专业教研室负责人:发任务书日期: 2013年9 月 15 日任务书填写要求1毕业设计(论文)任务书由指导教师根据各课题的具体情况指导学生填写。此任务书应在毕业设计(论文)开始前一周内填好并发给学生;2任务书内容必须用黑墨水笔工整书写或按教务处统一设计的电子文档标准格式(可从教务处网页上下载)打印,不得随便涂改或潦草书写

2、,禁止打印在其它纸上后剪贴;3任务书内填写的内容,必须和学生毕业设计(论文)完成的情况相一致,若有变更,应当经过所在专业主管领导审批后方可重新填写;4任务书内有关“系别”、“专业”等名称的填写,应写中文全称,不能写数字代码。学生的“学号”要写全号,不能只写最后2位或1位数字;5任务书内“主要参考文献”的填写,应按照国标GB 771487文后参考文献著录规则的要求书写,不能有随意性;6有关年月日等日期的填写,应当按照国标GB/T 740894数据元和交换格式、信息交换、日期和时间表示法规定的要求,一律用阿拉伯数字书写。如“2004年3月15日”或“2004-03-15”。毕 业 设 计(论 文)

3、任 务 书1本毕业设计(论文)课题应达到的目的: 使参与毕业设计的学生对利用JAVA和SQL SERVER开发基于网络的数据库管理系统的开发过程有个基本认识,对于关系数据库的理论课进行实际验证。2本毕业设计(论文)课题任务的内容和要求(包括原始数据、技术要求、工作要求等): 2.1.学会简单局域网的建设;2.2.学会利用JAVA进行数据库管理系统开发;2.3.会使用SQL SERVER建库、建表、建存储过程、建关系数据库结构;2.4.学会通过SQL SERVER客户端管理数据库,进行数据库操作;2.5.学会JAVA在数据库方面的基本编程;2.6.提供一套能够任课学生数据管理系统,并能生成教学用

4、各类表格(任务);2.7.提供所用数据库表的详细数据结构;2.8.提供基于BS的简单管理界面(包括对学生数据输入、修改、打印、删除、授权管理);2.9.提供基于BS的简单管理界面(包括学生表格的自动生成,修改、打印、删除、授权管理);2.10为下一步教学管理系统预留接口。毕 业 设 计(论 文)任 务 书3对本毕业设计(论文)课题成果的要求包括毕业设计、论文、图表、实物样品等: 3.1.一套毕业设论文(包括必须的理论描述、数据库表结构、JVAV程序清单);3.2.一套可用的、满足2.8、2.9、2.10的要求的用户界面程序;3.3.一套答辩用于演示的PPT。4主要参考文献: 1 王少锋.UML

5、面向对象建模方法与技术,北京:清华大学出版社,2004 .10,P55-1202 付玉生.SQL Server 2005基础教程与上机指导M.北京: 清华大学出版社,2006年3 叶达峰.Eclipse编程技术与实例 思维科技编著 人民邮电出版社 20064 陆路.电信大客户管理系统的分析与设计J.哈尔滨:哈尔滨工程大学,20065 孙卫琴,李洪称.Tomcat与Java Web开发技术详解 电子工业出版社,20086 孙卫琴.java面向对象编程M.北京:电子工业出版社,2006 7 曲朝阳,杨杰明,曹杰,杨胜春. Java程序设计M. 北京:清华大学出版社,20088

6、柏亚军.JSP编程基础及应用实例集锦.人民邮电出版社,2001.79 Nicholas C. Zakas. Professional JavaScript for Web Developers, 3rd Edition M. New York:Wrox,201110 Stelting, Stephen.Applied Java PatternsM.New York:Prentice Hall PTR,2001毕 业 设 计(论 文)任 务 书5本毕业设计(论文)课题工作进度计划:起 迄 日 期工 作 内 容2013-10-09-2013-10-25完成硬件搭建和数据源链接2013-10-16-

7、2013-11-20完成数据库规划和建设2013-11-21-2013-12-23完成客户端应用程序的编写 、撰写论文2013-12-27-2013-12-29评审论文、答辩教研室审查意见:目的准确,计划可行、内容适当、能过达到毕业设计锻炼学生能力的要求。教研室主任(签名): 年 月 日教务管理系统之学生管理子系统摘 要学生信息的管理是一个十分麻烦、棘手的任务,对应一所学校而言,更应该综合利用网络资源,提高学校学生的管理效率和力度,提高现在办学的现代化和网络化。关键词:jsp;servlet;教务管理系统;学生管理系统Student Academic Management System Man

8、agement SubsystemAbstractJSP;SERVLET;Educational information management system;student mannagement system目 录1绪论11.1课题的研究背景与意义1国内外现状1课题的研究意义和目的11.2.系统的定义及内容简介1系统的定义1系统的内容简介22系统中主要用到的技术32.1HTML方面3HTML3CSS3JavaScript32.2JAVAWEB方法3Java3JSP4Servlet42.3扩展插件4Juqery validate4AJAX5SWFUpload5POI5commons-fileu

9、pload52.4 数据库方面6SQL Server2005数据库6PowerDesiner·63教务管理系统的设计与实现73.1开发和运行环境选择73.2系统设计7系统功能分析7系统功能模块设计7WEB系统架构设计83.3学生管理子系统功能分析93.4数据库设计94教务系统公共模块设计144.1院系设置144.2考试类型144.3教室类型144.4教室管理154.5用户管理154.6专业设置154.7修改个人信息165模块详细设计(学生管理子模块)175.1学生基本信息条件查询17学生基本信息界面设计17学院和专业级联设计18专业和班级级联查询服务器关键代码195.2学生信息从Ex

10、cel批量导入20客户端swfUpload组件20上传组件commons-upload23解析Excel工具poi255.3学生信息增加275.4学生信息修改305.5学生信息导出到Excel315.6学生功能模块设计之学生权限34学生权限基本界面34验证码的制作356系统测试与维护376.1系统的测试目标376.2单位测试介绍376.3系统测试376.4系统维护39附 录40参考文献60致 谢611 绪论1.1 课题的研究背景与意义1.1.1 国内外现状教学管理系统现在已经成为大中专院校普遍使用的教学管理手段之一。就技术而言,实现教学管理系统的各种技术已经非常成熟。由于系统开发工具的不断推新

11、,虽然系统框架没有变、具体要求没变,但某些具体实现技术在变化,所以要对教务管理系统进行更新升级。教务管理系统是在国外许多大学已经开展了好多年,其管理模式基本上是面向全局的综合教务管理系统。由于多年运行不断使用和改进,国外的这种管理模式已处于比较完善的稳定运行阶段。近年来,高等教育办学规模持续扩大,教育教学体制改革不断深化,这对教务管理工作提出了新的要求。教务管理系统之学生子系统是在教务管理系统中非常重要的一个环节,它用到了广泛的技术,综合了多种技术和资源,是一个以现代网络技术为核心的计算机应用程序。经过这么多年的技术改革和更新,各个高校都建立了一套自己的教务管理处理信息平台,能够很好的处理高校

12、教务问题。1.1.2 课题的研究意义和目的对于高校教务处而言,最主要的是管理学生的基本信息、学生的创建、学生课程选择、教师信息管理。对于一个上万学生的高校而言,学生信息管理会非常繁琐,对其进行管理可能会出现各种莫名其妙的问题。为了方便学校教务人员的工作,提高教务人员的工作效率,因此有必要也必须开发一套用于管理学校师生信息的管理系统,克服传统管理的弊端,使得学校管理走上信息化道路,克服各种弊端,提高教务管理效率。教务管理系统之学生管理系统的开发可以较好的解决高校学生管理的难度,提高教务管理的效率和质量。1.2. 系统的定义及内容简介1.2.1 系统的定义本子系统是方便学校教务人员管理学生信息开发

13、的。现今全国各学校的管理系统正逐步与网络信息技术接轨,对学校的学员信息能够更方便地进行管理,运用教务管理系统实现管理模式的科学化、现代化,大大提高学校教务管理的运行效率和管理水平。因此,在科技、信息和网络技术高速发展的带动下,教务管理系统趋向于集计算机网络技术、科学管理方法等于一体,方便处理教务工作。由于学校教务管理的特殊性,决定了教务服务的综合性较其他服务更为突出和特殊,而学校教务对用于辅助管理的管理系统要求就相对更高。对于学校教务而言,具有实用意义的管理系统,在硬件上应采用互联网、办公自动化等信息技术,在软件上应融入当代各学校最优秀的管理思想,从而更好地辅助教务人员的管理工作。本课题就基于

14、教务管理的理念和信息技术的结合这样一个出发点而提出的需要。我国的各学校教师、学生人数众多,学校需要一个足够完善的教务管理系统来管理学生的基本新、选课和教师的授课安排等,所以本子系统提供了对学生的基本信息管理、批量学生信息导入、学生信息下载等功能,基本满足教务人员管理学生信息日常的教务工作。1.2.2 系统的内容简介教务管理系统为教务管理人员管理日常教务工作提供了方便。学生可以使用此系统查询自己已修完课程的成绩、查看自己的学籍信息、选课等;教师可以使用此系统给学生所选的课程打分、查看自己的信息及课程安排情况等;二级院系可以对本学院的课程进行管理;管理员可以使用此系统添加相关用户信息、备份数据等。

15、因此本系统主要实现学生功能、教师功能、二级院系功能、管理员功能。学生功能:个人信息查询、修改;密码修改等。教师功能:教师信息查询、修改;密码修改;教师课表;教学实施计划查询;二级院系功能:教学计划安排;每学期课程安排;管理员功能:教师信息修改、删除;管理员信息修改、删除(有权限之分);课程信息添加、修改、删除;学生学籍信息查询、修改、删除(有权限之分)等。教务管理系统之学生管理系统完成的主要功能:1:学生权限下,登陆、学生基本信息查询和修改;2:管理员权限下的学生信息添加、查询与修改、学生批量信息导入和导出;2 系统中主要用到的技术2.1 HTML方面2.1.1 HTMLHTML(HyperT

16、ext Markup Language)即超文本标记语言,也就是我们平时说的网页,一网页就是一个HTML文件,一般以.html或者.html为扩展名,可以用任何文本编辑器进行编辑。2.1.2 CSS层叠样式表(Cascading Style Sheets),一种用来为修饰结构文档的HTML或者XML的样式表,CSS的最大优点就是能够实现将文件的内容与显示分隔开来,展现同样的内容只需修改css就可以实现不同的页面展示效果。2.1.3 JavaScriptJavaScript,一种基于浏览器的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。现在多用于客户端的表单验证,随着HT

17、ML5的出现JS变的更加流行。JavaScript的一个重要功能就是面向对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。是一种解释性脚本语言(代码不进行预编译)。主要用来向HTML页面添加交互行为。可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。2.2 JAVAWEB方法2.2.1 JavaJAVA不仅是一门编程语言,更是一个平台,拥有面向对象,跨平台,多线程,分布式等特点,具体可以分为JAVASE,JAVAEE,JAVAME。其中,JAVASE是java的基础,也是java的核心,JAVA SE:JAVA Platform,Sta

18、ndard Edition,前身J2SE,2005年之后更名为JAVA SE,主要包含面向对象思想,JVM,底层调用等待。JAVA EE即java Platform ,Enterprise Edition 企业级开发应用技术,主要包括JSP,Servlet,Ejb等等;JAVA ME,JAVA Micro Edition嵌入式移动设备开发技术,主要做游戏开发,通讯设备。Java语言的特定:简介有效、可移植性、面向对象、解释性、适合分布式计算、有良好的性能,健壮、防患于未然、用多线程处理能力、有较高的安全性能、是一门动态语言、是一种中型的结构 。java的最大特色跨平台,这个全靠底层的JVM(J

19、AVA Virtual Machine)来实现的,JVM通过读取与平台无关的class文件实现跨平台。2.2.2 JSPJSP是目前最常用的三种动态网页语言ASP(Active Server pages),JSP(JavaServer Pages),PHP (Hypertext Preprocessor)之一,由Sun Microsystems公司倡导和许多公司参与共同建立的一种使软件开发者可以响应客户端请求,而动态生成HTML、XML或其他格式文档的Web网页的技术标准。JSP,即java Server Page JSP被JSP的编译引擎编译转化成Java Servlet(一个java类),

20、然后有java虚拟机底层执行。其实,SUN(现被Oracle公司收购)早期没有jsp,只有Servlet,用Servlet的输出流动态拼接这html,因为效率太低,SUN公司就借鉴了Asp开发了一套类似ASP的服务器脚本技术JSP。使得JSP得到快速的发展。2.2.3 ServletServlet是服务器端小程序,只要是jsp能干的事情,servlet都能干,但是一般情况下我们规定,servlet只干三件事情,即:判断、跳转和调用。即以后这jsp只能找servlet,不能找jsp。这样做可是实现程序的分层实现。Jsp作为前台页面展示,里面可以写java代码,但是一般不允许写,servlet只能

21、用来接收jsp页面的请求,进行判断,调用业务逻辑方法。这样就是网页很好的实现了分层结构,遵循MVC设计模式。2.3 扩展插件2.3.1 Juqery validateJquery是一个优秀的javascript框架。它是轻量级的js库,拥有强大的选择器,出色的DOM操作,可靠的事件处理、完善的兼容性和链式操作等功能,这些优点使得很多的开发者学习和研究它。Jquery是开源和免费的,开发者可以自己编写插件,jquery很小只有压缩版只有30kb左右。Jquery在对Ajax,表单验证等方面也做的很好。类似的jquery的插件插件还有很多,如Prototype、Dojo、Ext Js、MooToo

22、ls等等,但是Jquery以写得少,做得多(writer less,do more)的理念赢得了很多开发者的青睐。2.3.2 AJAXAJAX即“Asynchronous JavaScript and XML”(异步JavaScript和XML),AJAX并非缩写词,而是由Jesse James Gaiiett创造的名词,是指一种创建交互式网页应用的网页开发技术。2.3.3 SWFUploadSWFUpload是一个客户端文件上传工具,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统<input type="file" /

23、>标签的文件上传模式。他的主要特点可以归纳为:支持多文件同时上传,ajax实现的无刷新上传,可显示进度条,有良好的浏览器兼容性,支持文件格式的筛选。支持一些常见的javascript封装库,同时支持多个版本的flash。它还提供了一组简明的JavaScript事件,借助它开发者可以方便的在文件上传过程中更新页面内容来营造各种动态效果。这个组件有非常好的性能,得到了广大程序设计者的青睐。2.3.4 POIApache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供APIcrosoft Office格式档案读和写的功能。Apache POI功能比较强

24、大,可以提供对word,ppt和Excel文件格式的读写。我的项目中用到了对Excel数据的读写功能,POI确是强大支持多个版本的Excle数据进行操作。当然类似的工具也还有,比如JXl,这个插件是专门针对Excel进行开发的,也不错。2.3.5 commons-fileuploadWEB文件上传可能是网站建设中最常用的功能之一,常用的web上传组件有commons-fileupload和Smartupload。其中commons-fileupload是Apahce 软件基金会下面的一个开源项目,专注文件的上传于下载,支持一个或者多多文件上传,对中文支持友好,社区活跃,更新迅速,支持大文件上传

25、,可以限制上传文件的大小和格式,接口简单方便好用。2.4 数据库方面2.3.1 SQL Server2005数据库 在windows上开发的用数据库当然少不了用Microsoft的东西,之前我们学过了SQL Server 2000,这是一个微软十几年前的产品,现在太陈旧了,如同window xp一样,确实经典,但有些陈旧了。话说数据库产品很多,如Oracle数据库、mysql数据库也都不错,但是在易用性上面说,个人觉得还是 Microsoft SQL Server的产品更胜一筹。于是我就选择SQL Server 2005。2.3.2 PowerDesiner·听同学说有一种工具学了之

26、后,就不用写SQL语句了,而且支持常见的数据库,只要设计好E-R图,就可以产生针对不同数据库厂商的不同版本自动生成sql语句,这就是Power Designer,它是Sybase公司的CASE工具集,可以 方便的对数据库进行操作,包含常见的大多数的关系型数据库。可以画流程图,概念模型,物理模型等等,于是果断选择了powerDesiner。3 教务管理系统的设计与实现3.1 开发和运行环境选择教务管理系统主要用于学校内部资源管理(如学生信息管理、老师信息管理、教学计划查询等),充分利用现代高度信息化手段来接受学生信息的咨询和反馈,形成目前学校内部受欢迎的教务产品,同时也方便了教务管理人员的管理工

27、作,也方便了学生对自己个人信息的实时了解。1、 开发工具的选择开发环境:java平台开发工具:myEclipse和intellig ideaweb服务器:Tomcat数据库:Microsoft SQLServer 2005辅助工具:Dreamweaver2、运行环境要求操作系统:Windows xp 或 window 73.2 系统设计3.2.1 系统功能分析教务管理系统主要具有以下功能要求:学生功能:个人信息查询、修改;密码修改等。教师功能:教师信息查询、修改;密码修改;教师课表;教学实施计划查询;二级院系功能:教学计划安排;每学期课程安排;管理员功能:教师信息修改、删除;管理员信息修改、删

28、除(有权限之分);课程信息添加、修改、删除;学生学籍信息查询、修改、删除(有权限之分)等。3.2.2 系统功能模块设计根据系统功能要求分析,可以将系统分解成以下几个功能模块来设计,如图3-1所示:教务管理系统学生管理子系统教学计划管理教师管理子系统学生基本信息导出年度教学计划查询与导出教学计划查询与导出教学计划查询与导出课程信息查询教师基本信息导出教师基本信息修改教师基本信息导入教师基本信息查询学生基本信息修改增加学生基本信息导入学生基本信息查询图3-1 系统功能模块图3.2.3 WEB系统架构设计JSP+EL+JSTL显示层Servlet显示层请求响应数据库DBCP图3-2 WEB系统MVC

29、三层结构设计3.3 学生管理子系统功能分析1 教务处登陆功能模块图教务管理系统学生信息修改学生信息多条件查询学生信息批量导出下载学生信息从Excel批量导入学生登录授权登陆图3-3 教务处登陆功能模块图2.学生登陆功能模块图登陆教务管理系统学生基本信息查看学生基本信息的修改3-4 学生登陆功能模块图3.4 数据库设计本教务系统在设计之初,计划包含的模块比较多,下面就需要的数据库设计进行详细介绍。根据数据库结构的设计,可知在数据库中需建立15张表。本系统创建的数据库为eduManager,该数据库由学生信息表(student)、教师信息表(teacher)、二级院表(dept)、用户表(User

30、)、考试类型表(tb_examType)、教室类型表(tb_classRoomType)、专业班级基本表(ClassTa)、学期教学计划表(perTermSchedu)、教室基本表(classRoom)、课程基本表(rankCourse)、开课学院基本表(tb_startCourseDept)、班级课程表(classRankCourse)、人才培养计划表(educationOutline)、专业基本表(major)、课程安排表(rankCourseTimePlace)组成,在设计中所用到的关系表及其结构分别如下所示。1、学生信息表(student),如图3-5示。图3-5 学生信息表2、教师信

31、息表(teacher),如图3-6示。图3-6教师信息表3、二级院系表(dept)如图3-7示。图3-7 二级院系表4、用户表(User)如图3-8示。图3-8 用户表5、考试类型表(tb_examType)如图3-9所示。图3-9考试类型表6、教室类型表(tb_classRoomType)如图3-10所示。图3-10教室类型表7、专业班级基本表(ClassTa)如图3-11所示。图3-11专业班级基本表8、学期教学计划表(perTermSchedu)如图3-12所示。图3-12学期教学计划表9、教室基本表(classRoom)如图3-13所示。图3-13教室基本表10、课程基本表(rankC

32、ourse)如图3-14所示。图3-14课程基本表11、开课学院基本表(tb_startCourseDept)如图3-15所示。图3-15开课学院基本表12、班级课程表(classRankCourse)如图3-16所示。图3-16班级课程表13、人才培养计划表(educationOutline)如图3-17所示。图3-17人才培养计划表14、专业基本表(major)如图3-18所示。图3-18专业基本表15、课程安排表(rankCourseTimePlace)如图3-19所示。图3-19课程安排表4 教务系统公共模块设计4.1 院系设置基本模块-院系设置如图4-1所示。图4-1 院系设置4.2

33、 考试类型基本模块-考试类型如图4-2所示。 图4-2 考试类型4.3 教室类型基本模块-考试类型如图4-3所示。图4-3 教室类型4.4 教室管理基本模块-考试类型如图4-4所示。图4-4 教室管理4.5 用户管理基本模块-用户管理如图4-5所示。图4-5 用户管理4.6 专业设置基本模块-专业设置如图4-6所示。图4-6 专业设置4.7 修改个人信息基本模块-修改个人信息如图4-7所示。图4-7 修改个人信息5 模块详细设计(学生管理子模块)5.1 学生基本信息条件查询5.1.1 学生基本信息界面设计管理员权限-学生信息查询如图5-1所示:图5-1 学生基本信息查询多条件查询服务器端关键代

34、码:/ 1.获取客户端提交的参数String deptId = request.getParameter("deptId"); / 学院String mId = request.getParameter("majorId"); / 专业String cId = StrUtil.codeStr(request.getParameter("classId"); / 班级String startYear = StrUtil.codeStr(request.getParameter("startYear"); / 入学年份

35、/ 2.分页工具条参数String cPage = request.getParameter("currentPage"); /当前显示的页数String pSize = request.getParameter("pageSize"); / 每页显示的条数/ 3.pageBean参数设置PageBean pb = new PageBean();int totalRecord = studentBiz.findMaxRows(pSize, deptId, mId, cId, startYear);List<StudentVO> list =

36、studentBiz.findAll(StrUtil.parseInt(cPage, 1), StrUtil.parseInt(pSize, pb.pSize),deptId, mId, cId, startYear);pb.setMaxRows(totalRecord);pb.setPageList(list);pb.setpSize(StrUtil.parseInt(pSize, pb.pSize);pb.setcPage(StrUtil.parseInt(cPage, 1);request.setAttribute("pb", pb);/ 4.其他参数request.

37、setAttribute("deptId", deptId);request.setAttribute("majorId", mId);request.setAttribute("classId", cId);request.setAttribute("startYear", startYear);request.getRequestDispatcher("/page/classes/stuList.jsp").forward(request, response);5.1.2 学院和专业级联设计

38、学院和专业级联,如图5-2所示:图5-2 学院和专业级联示意图1 学院和专业班级级联查询客户端关键代码var $mId ; var $cId; $(function() $mId = $("selectname=mId"); /专业 $cId = $("selectname=classId"); / 班级 / 1. 页面加载成功之后 ajaxRequest(); / 2. 当专业被改变的时候 $mId.change(function(e) ajaxRequest(); ); ); function ajaxRequest() var ajaxurl =

39、"page/classes/Student"var ajaxdata = "m":"7","majorId":$mId.val();$.ajax(url:ajaxurl, /请求的urltype:"post",/ 请求的方式,post,get,putdata:ajaxdata,/请求的数据,get,这里是nulldataType:"xml",/设置回传数据的格式,不设置,会只能判断,并解析success:function(xmlObj, state)/ 设置成功接收数据的会回

40、调函数$cId.empty();/清空班级$cId.append($("<option value='0'></option>");$(xmlObj).find("class").each(function() /遍历每一个叫class的节点var classTa = $(this);var cId = classTa.text();$cId.append($("<option value='"+ cId +"'>"+ cId +"<

41、;/option>");); 5.1.3 专业和班级级联查询服务器关键代码专业和班级级联,如图5-3所示:图5-3 专业和班级级联示意图专业和班级级联查询服务器关键代码protected void changeClassByMajor(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOExceptionString mId = request.getParameter("majorId"); /接收ajax post提交的传递的参List&l

42、t;String> cIdList = classTaBiz.findByMid(mId); Document document = new Document(); / 生成根节点Element root = new Element("classes");document.setRootElement(root); / 设置根元素Iterator<String> it = cIdList.iterator();while(it.hasNext()String cId = it.next();/ 拼装xmlElement classeTa = new Ele

43、ment("class");classeTa.setText(cId);root.addContent(classeTa);response.setContentType("text/xml"); /注意回传数据的格式OutputStream out = response.getOutputStream();JdomXMLUtil.sendDom(document, out);/JdomXMLUtil.sendDom(document, System.out);5.2 学生信息从Excel批量导入5.2.1 客户端swfUpload组件上传组件swfup

44、laod,如图5-4所示:图5-4 上传组件swfUploadSwfupload上传指定后缀示意图,如图5-4所示:图5-5 上传组件swfUpload指定上传文件后缀Swfupload多文件上传队列示意图,如图5-6所示:图5-6 上传组件swfUpload上传文件管理上传插件SWFUpload客户端关键代码:<script type="text/javascript">var swfu;window.onload = function () swfu = new SWFUpload(upload_url: "<%=uploadUrl.toSt

45、ring()%>",post_params: "name" : "huliang","m":"10",/ File Upload Settingsfile_size_limit : "100 MB",/ 100MB/file_types : "*.*",file_types : "*.xls;*.xlsx",file_types_description : "所有文件",file_upload_limit : "

46、;20",/上传文件个数限制file_queue_error_handler : fileQueueError,file_dialog_complete_handler : fileDialogComplete,/选择好文件后提交file_queued_handler: fileQueued,upload_progress_handler : uploadProgress,upload_error_handler : uploadError,upload_success_handler : uploadSuccess,upload_complete_handler : uploadC

47、omplete,/ Button Settingsbutton_image_url : "<%=basePath%>images/SmallSpyGlassWithTransperancy_17x18.png",button_placeholder_id : "spanButtonPlaceholder",button_width: 350,button_height: 18,button_text : '<span class="button">选择文件 <span class="bu

48、ttonSmall">(单个文件最大100MB)</span></span>',button_text_style : '.button font-family: Helvetica, Arial, sans-serif; font-size: 12pt; .buttonSmall font-size: 12pt; ',button_text_top_padding: 0,button_text_left_padding: 18,button_window_mode: SWFUpload.WINDOW_MODE.TRANSPARE

49、NT,button_cursor: SWFUpload.CURSOR.HAND,/ Flash Settingsflash_url : "js/swfupload/swfupload.swf"custom_settings : upload_target : "divFileProgressContainer"debug: false /是否显示调试窗口);function startUploadFile()swfu.startUpload();</script>5.2.2 上传组件commons-uploadApache commons-u

50、pload上传文件核心代码:protected void studentUPdate(HttpServletRequest request, HttpServletResponse resp) throws ServletException, IOExceptionStudentVO vo = new StudentVO();try DiskFileItemFactory factory = new DiskFileItemFactory();factory.setSizeThreshold(1024*4); / 设置缓冲区大小,这里是4kbfactory.setRepository(temp

51、PathFile); / 设置缓冲区目录ServletFileUpload upload = new ServletFileUpload(factory);upload.setSizeMax(1024*1024*4); / 设置最大文件尺寸,这里是4MB List<FileItem> items = upload.parseRequest(request);/ 得到所有文件 Iterator<FileItem> i = items.iterator(); while (i.hasNext() FileItem fi = (FileItem) i.next(); if (

52、fi.isFormField() / 判断是否是 字段值 String inputName = fi.getFieldName(); / 对应表单的 nameString inputValue = fi.getString("utf-8"); / 对应表单的valueif (inputName.equals("sId") / 学号vo.setsId(inputValue); else if(inputName.equals("sName")/ 姓名vo.setsName(inputValue);/-else / file上传域Stri

53、ng fileName = fi.getName(); /获取上传文件的完整名称如:f:bb.bmpif (fileName != null && !fileName.trim().isEmpty() String virtualPath = StrUtil.addUploadPrefix(fileName); / 存入数据库的虚拟文件名称 vo.setPhoto(virtualPath); File fullFile = new File(virtualPath);/ 增加时间戳的前缀 File savedFile = new File(uploadPath, fullFile.getName(); fi.write(savedFile); /=上传完成return; catch (Exception e1) e1.printStackTrace(); 5.2.3 解析Excel工具poiPoi解析Excel实现批量上传效果如图:图5-7 上传组件 学生信息批量导入结果图Apache POI解析Excle核心代码:/* * Excel读取工具 * author 段大志 * 时间:2013-12-1下午6:35:20 */public class ExcelReaderUti

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论