欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    基于JAVA的学生管理系统的设计与实现.docx

    • 资源ID:7107261       资源大小:149.83KB        全文页数:36页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于JAVA的学生管理系统的设计与实现.docx

    基于JAVA的学生管理系统的设计与实现摘要随着社会的发展,信息化对人们的工作、生活产生了深远的影响。中国历来重视教育,但随着大学的扩张,对学生的管理也日趋复杂。比如,每一位同学的个人档案,住宿,课程安排,以及学习情况,都耍有一个精确的记录和管理。总之,对学生进行有效、准确的信息管理,将会变得更加重要。在此背景下,以JAVA为基础的学生管理系统应运而生。实现了对全校教师和学生的信息进行管理。通过本系统,管理员可以对校园内的教师、学生资料进行保存、查询,并对教师、学生进行分组、分班。该系统以JAVA及MYSQ1.为核心,以H+为核心的用户界面架构为核心,以JAVA为核心。本系统是以WEB访问的B/S系统为基础,主要由五个基本模块组成:学生管理、教师管理、宿舍管理、班级管理和课程安排管理。关键词:学生管理系统;信息;JAVA;MYSQ1.;WEB第一章绪论第一章开发工具与开发环境概述1.1 开发工具简介1.1.1 Eclipse简介氏IiPSe最初是一种下一代IDE开发环境,是IBM公司为备选的商业软件VisualAgefOrJaVa而开发的,于2001年11月向开放源码社区捐赠,目前由一个非盈利软件厂商联合会ECIiPSe基金会进行管理。它具有如下优点:1、功能丰富:ECliPSe提供了大量的插件,可以满足不同的开发需求,例如代码编辑、调试、版本管理、项目管理等。2、用户友好:ECIiPSe的界面清新、简洁,易于使用。3、跨平台:ECIiPSe可以在WindOWs、macOS和1.inUX等操作系统上运行,方便开发人员在不同平台间进行项目开发。4、开源免费:ECliPSe是开源软件,开发人员可以免费使用,无需支付任何费用。5、社区支持:ECIiPSe有庞大的开发者社区,可以获得丰富的帮助和支持。1.1.2 MYSQ1.数据库简介MySQ1.是一种由瑞典的MySQ1.AB公司所研发的、隶属于甲骨文集团的关系数据库管理系统。MySQ1.(MySQ1.)是目前使用最为广泛的一种关系数据库管理系统,而对于WEB应用来说,MySQ1.又是其中最优秀的一种。MySQ1.是一个关系型的数据库管理系统,它将数据存储在多个表格中,以代替将全部数据存储在一个大型的存储库中,从而提高了数据的处理速度和灵活性。MYSQ1.是一种基于C/S架构的数据库服务器。1.1.3 Tomcat简介TomCat是APaChe软件基金会旗下的Jakarta项目所研发的SerVlet容器,它根据SUnMiCrOSyStemS的技术标准,支持SerVIet和JavaServerPage(JSP),并且具有Web服务器所特有的特性,例如TomCatManagement与控制平台,安全域管理,Tomcat阀门等。因为TOmCat自身还内置了HTTP服务器,所以可以将其看作是一台独立的网络服务器。由于TOmCat具有先进的技术和稳定的性能,并且是免费的,所以它受到了JaVa爱好者的喜欢,也得到了一些软件开发人员的认同,它已经成为了当前比较受欢迎的Web应用服务器。1.2 开发环境简介1.2.1 开发软件环境与工具选择(1)开发工具:eclipse4.4.3版本(2)服务器:tomcat7.0版本(3)数据库:MySQ1.5.5版本(4)前端框架:基于bootstr叩的H+后台主题Ul框架(5)后台框架:使用SPringMVC架构(6) JaVa环境变量:jdkl.7.0_131.2.2 开发的硬件环境主机配置:CPUi9-8950HKI.80HZ;内存64G;硬盘1T。第二章系统可行性分析2.1 经济可行性分析该项目是以JAVA、MYSQ1.和ToMCAT服务器为基础的,只要将这三个要素配置好,就可以将该项目进行应用,其费用主要是针对软件的开发,而项目软件的开发费用远低于项目软件的收益,因此是完全可行的。2.2 操作可行性分析在界面的设计上,与学校管理人员的操作习惯相一致,它简单易学,数据准确可靠,具有很强的可维护性。2.3 技术可行性分析计算机要求:WindoWS系统,MYSQ1.数据库,tomcat服务器,JaVa环境,eclipseo软件开发技术方面:该项目前台是基于B/S架构的Java开发,后台采用MYSQ1.语句来实现与数据库的数据交互。第三章系统需求分析与设计3.1 学生管理本模块可以对学生数据新增、修改、删除等操作。3.1.1 学生列表将学生的资料以列表的方式呈现出来,其中包含了学生的头像、姓名、创建时间等信息,并且以创建时间为依据,以倒序排列。请单击学生的照片以了解更多信息。3.1.2 功能描述该模块具有增加,删除,修改,查找等功能。新增:新的资料,以性别的方式进行选择。生日的选择使用时间控制,姓名,联络资料,班级是必须的。其中的班次是以下拉方式选取的,需要在班次管理中维持的内容。在一些输入栏中,例如手机号码、身份证号码等需要添加校验,以确保输入数据的格式是正确的。修改:新的特性删除:此功能需要有大批量删除的功能,使用软删除的方法,以后的数据可以恢复。查询:可以通过名字,班级,联系信息等领域进行搜索。点击你的名字可以看到你的学生信息。3.1.3 数据库设计tb_student_info表用来存储学生的全部信息,其中有23个字段,其结构如表3-1所示。表3.1lb_ludent_info表字段名字段含义数据类型id学号(主键)varchar(50)stu_name姓名varchar(50)stu_sex性别Varchar(IO)stu_sex_code性别编码(0:女;1男)Varchar(IO)stu_idCard身份证号varchar(50)stu_birthday生日datetimestu_phone手机号varchar(50)StudenCparent联系人varchar(50)parent_phone联系人手机号varchar(50)stu_addr家庭住址varchar(50)province_id省份IDvarchar(50)province省份varchar(50)city_id城市IDvarchar(50)city城市varchar(50)CountyJd县IDvarchar(50)county县varchar(50)dormitory_id宿舍IDvarchar(50)entrance_date入学时间datetimeclass_id班级IDvarchar(50)head_url头像路径varchar(50)manager_name创建人varchar(50)manager_date创建时间datetimedel_flag删除标志(0:否;1是)varchar(10)tb_address_info表用来存储城市全部信息、,属于字典表,其中有9个字段,其结构如表3-2所示。表3.2tb_address_infb表字段名字段含义数据类型addr_id主键idvarchar(50)addr_name地区名名称varchar(50)addr_type地区类型1:省;2:市;3:区varchar(10)location位置坐标点varchar(50)del_mark删除标志(0:正常;1:已删除)varchar(50)parentjd父地区IDvarchar(50)addr_memo备注varchar(50)manager_name创建人varchar(50)manager_date创建时间datetime3.1.4页面与头现在左边的菜单上按一下,就会出现一个学生的资料清单。这个清单的标题包含了图片,名字,创建的时间。学员形象加入超级连结,请按学员形象进入学员资料页面,可查阅学员资料。该模块具有新增,修改,删除等功能,还可以根据学生的姓名,电话,班级等条件对其进行模糊搜索。图31中显示了学生列的表面:图3.1学生列表效果图学生详情(修改,新增)面如图3-2所示:口品野23m9f图3.2学生新增、修改效果图该模块的部分主要代码如下:1) Java代码网/* 跳转到学生管理页面* paramrequest* paramresponse* return* throwsException* /Auth(verify1.ogin=true)RequestMapping(value='7studentView")publicModelAndViewstudentView(HttpServletRequestrequest,HttpServletResponseresponse)throwsExceptionreturnnewModeIAndVieWC7schoolManager/StiIdentManager/StudentViewJsp");)* 获取学生信息* paramrequest* paramresponse* return* throwsException*/Auth(verify1.ogin=true,verifyUR1.=true)ResponseBodyRequestMapping(value='7getStudentInfo,produces=11applicationtext;charset=utf-8")publicStringgetStudentlnfo(HttpServletRequestrequest,HttpServletResponseresponse)throwsExceptionv!-获取分页总数-><selectid="getStudentCount"resultType=njava.util.MapHparameterType="java.util.Map">selectcount(*)asnumfromtb_student_infotwhere1=1<iftest="content!=nullandcontent!=1111>andconcat(u.username,u.phone,u.manager_date)likeconcat('%#content)<if>andt.de1.flag=,O,<select><!-删除信息-><updateid="delStudentInfo"parameterType="java.util.Map"><foreachcollection="listuitem="item"index="index"separator="">updatetb_student_infbt<set>t.del_flag=,1t.manager_name=#item.managerName<set>wheret.id=#item.stuld<fbreach><update><!一修改信息><updateid=,updateStudentInfo"parameterType=',java.util.Map">updatetb_student_infb<update>3) JSP页面部分代码U3学生列表页:<body>jQuery(H#studentView").jqGrid(datatype:"local",autoWidth:true,ShrinkToFititrue,hidegrid:false,CaptionibuttonStr,height:400,multiselect:true,rownumbers:true,loadtext:“数据加载中.”,CoINames:ID?头像?姓名?性别?出生日期了联系电话二班级?宿舍,'入学日期?创建时间1ColModeI:namefstujd,indexr,stujd,width,alignzncenter11,hiddenlrue,name:'head_urr,index:'head_urr,width:l00,align:"center",formatter:function(value,row,index)if(typeof(value)=11undefined")return,臂未上传”;elseif(value="")return”暂未上传”;elsereturn"<ahref=,javascriptruserDetail(,+index.userJd+11,),><imgsrc=",+value÷,11style=,width:50px;height:50px;'style=,cursor:pointer;7></a>n;name:'stu_name',index:'stu_name',Width:80,align:"Center",namez'sex,indexsex',width:100,align:"center",name:'stu_birthday',index:'stu_birthday',Width:80,align:"Center",name:'PhOne',index:'PhOne',width:80,align:"Center",namez'class-id',indexclass-id,width:100,align:,center,name:,dormitory-id,index:,dormitory-idwidth:100,align:"Center"),nameentrance-dateindexr,entrance-datewidthJOO,alignr"center"),namemanager-date,indexz,manager-date',width:100,align:"center"));3.2教师管理该模块具有对教师数据新增、修改、删除等功能。3.2.1 教师列表使用列表列式来显示教师的资料,显示的资料包含了教师的头像、老师的联系方式、授课、职称、创建时间等信息,并按照创建时间倒序排序。点击头像可查看教师详情3.2.2 功能描述此模块具有增加、删除、修改、查询的功能。修改:功能与上述相同新增:增加了老师的资料,增加了性别的选项。必须使用时间控制来选择生日的日期。名称,联系信息,标题是必需的。一些输入栏:如移动电话号码、身份证号码等需要添加正规检查,以确保输入资料的格式是正确的。删除:此功能需要有大批量删除的功能,使用软删除的方法,可以在以后的数据恢复。查询:搜索可以通过名字,职务,联系信息等领域来搜索。点击你的名字可以看到老师的详细信息。323数据库设计Ibjeachejinfo表用来存储教师的全部信息,其中有19个字段,其结构如表33所示U1.表3.3tb_teacher_infb表字段名字段含义数据类型id主键IDvarchar(50)t_name姓名varchar(50)t_sex性别varchar(10)t_sex_code性别编码(0:女;1男)Varchar(IO)t_birthday生日datetimet_phone手机号varchar(50)stu_addr家庭住址varchar(50)province_id省份IDvarchar(50)province省份varchar(50)city_id城市IDvarchar(50)city城市varchar(50)county_id县IDvarchar(50)county县varchar(50)t_major专业varchar(50)t_title职称varchar(50)head_url头像路径varchar(50)manager_name创建人varchar(50)manager_date创建时间datetimedel_flag删除标志(0:否;1是)varchar(10)3.2.4 页面与实现12点击左边的老师管理菜单,就可以看到老师的资料清单。这个清单的头部包含了图片,名字,、头衔,创建时间和其他的信息。老师的形象可以加入到这个连结中,然后图3-3教师列表效果图点选老师的形象,就可以看到老师的形象了。该模块具有新增、删除等功能,还可以根据老师的姓名、授课情况等进行模糊搜索。图3-3中显示了教师列表的表面:二品r内图3.4教师新增、修改效果图该模块的部分主要代码如下:1)Java代码/*跳转到教师管理页面paramrequestparamresponsereturnthrowsException*/Auth(verify1.ogin=true)RequestMapping(value=uZteacherView")publicModelAndViewteacherView(HttpServletRequestrequest,HttpservletResponseresponse)throwsExceptionreturnnewModelAndView('7schoolManagerteacherManagerteacherView.jsp11);)* 获取教师信息* paramrequest* paramresponse* return* throwsException* /Auth(verify1.ogin=true,verifyUR1.=true)(三)ResponseBodyRequestMapping(value='VgetTeacherInfb",produces="application/text;charset=utf-811)publicStringgetStudentInfo(HttpServletRequestrequest,HttpServletResponseresponse)throwsExceptionJSONObjectjsonRes=newJSONObject();Map<String,Object>mapParam=getParameterMap(request);)* 保存教师数据* param* paramrequest* paramresponse* return*throwsException*/AUth(Verify1.ogin=true)RequestMapping(value='VsaveTeacherInfo",method=RequestMethod,POST)publicResponseBodyintSaveTeacherInfo(HttpServletRequestrequest,HttpServIetResponseresponse)throwsExceptionMap<String,Object>mapParam=getParameterMap(request);Stringtype=mapParam.get("type,).toString();Map<String,Object>User1.ogin=(Map<St11ng,Object>)request.getSession().getAttribute(11userInfor11);mapParam.put("managerName11,user1.ogin.get("USER_NAME");mapParam.put("managerDate",newjava.util.Date();inti=0;if(,'add,'.equals(type)mapParam.put("atagjd',UUlD.randomUUID().toString().replaceAll("",”);i=insert(mapper÷11saveTeacherInfo11,mapParam);elsei=update(mapper÷"updateTeacherInfo",mapParam);1returni;)2) MybatiS配置部分代码<!-获取用户信息一><selectid="getTeacherInfo"resultType="java.util.Map"parameterType=njava.util.Map">select*fromtb_teacher_infotwhere1=1<iftest="content!=nullandcontent!=11u>andConCat(U.username,u.phone,u.manageJdate)likeconcatC%#content,1%,)<update>3) Jsp页面部分代码<body><div><tableid=,'teacherViewuclass=11tabletable-stripedtable-borderedtable-hoverdataTables-example"><table><divid="teacherPageruclass=11pagernstyle=uclear:both;text-align:right;height:35px;"x/div><div><div><div><div><div><body>3.3宿舍管理这个模块拥有对宿舍数据修改、新增、删除等功能,还拥有宿舍分配学生的功能。3.3.1 宿舍列表以一种列表的方式对宿舍数据进行显示,所显示的信息有:宿舍名称、宿管联系方式、创建时间等,并且以创建时间为顺序对其进行排列。双击列表以查看详细情况,详细情况页面中包含了宿舍楼的基本资料以及此宿舍楼下的学生资料。3.3.2 功能描述本模块包含宿舍资料增删修改查询等功能。删除:此功能需要有一批删除的功能,使用一种软删除的方法,可以在以后的数据恢复。新增:增加了寝室资料,寝室管理员的名字在下拉菜单里,资料来源于老师管理系统的资料。宿舍名必须填写,不可重复。修改:此特性修正的原则与新增加的相同。另外,这一功能还包括了分配学生的功能。查询:可以根据宿舍楼的名字,宿管阿姨的名字,以及其他的一些字段进行查询。双击可查看宿舍楼详细信息。3.3.3 注意事项同一学生只能属于单个宿舍,宿舍数据删除后,该宿舍下的学生属于未分配状态。3.3.4 数据库设计Dtb-dormitoryjnfo表用来存储教师的全部信息,其中有9个字段,其结构如表3-4所示。表3.4tb_dormitory_info表字段名字段含义数据类型id主键varchar(50)d_no宿舍楼号d_name宿舍名称varchar(50)manager_name宿管老师varchar(50)manager_phone宿管电话varchar(50)d_num学生数量intd_max_num允许学生数量intcreate_date创建时间datetimedel_flag删除标志(0:否;1是)varchar(10)2)tb_dormitory_detail表是一个宿舍与该宿舍学生中间表,它被用来记录这个宿舍下的学生信息,它有3个字段,它的结构如表3-5所示。表3.5tb_dormitory_detail表字段名字段含义数据类型id主键varchar(50)dorm_id宿舍idvarchar(50)stu_id学生idvarchar(50)3.3.5 页面与实现按一下左边的宿管选单,可以看到宿管资讯。这个表格的标题包含了宿舍的楼号,宿舍的名字,宿舍的管理老师,宿舍的电话,学生的人数,最多的学生,创建的时间。按下表格,可进入宿舍楼详情页面,可浏览宿舍楼详情。本模块有新增,修改,删除等功能,并可根据宿舍楼的名字,宿管老师,宿管老师的联系方式,实现模糊搜索。图3-5中显示了宿舍的列面”引:图3.5宿舍管理列表效果图图3.6宿舍新增修改效果图该模块的部分主要代码如下:1) Java代码©Controller(O)RequestMappingCVdormitoryn)publicclassDormitoryActionextendsBaseActionf* 保存宿舍数据* param* paramrequest* paramresponse* return* throwsException*/Auth(verify1.ogin=true)RequestMapping(value='VsaveDormitoryInfon,method=RequestMethod,POST)public(O)ResponseBodyintsaveDormitoryInfb(HttpServletRequestrequest,HttpServletResponseresponse)throwsExceptionMap<String,Object>mapParam=getParameterMap(request);Stringtype=mapParam.get(utype,).toSt11ng();Map<String,Object>User1.ogin=(Map<String,Object>)request.getSession().getAttribute(11userInfor");mapParam.put("managerName11,user1.ogin.get(',USER-NAME11);mapParam.put("managerDate,',newjava.util.Date();inti=O;if("add".equals(type)mapParam.put("id",UmD.randomUUID().toStrmg().replaceAll(,'-H,h);i=insert(mapper+11saveDormitoryInfb",mapParam);)elsei=update(mapper+,'updateDormitoryInfbn,mapParam);)returni;)2) MybaliS配置部分代码<!-获取宿舍信息-><selectid="getDormitoryInfouresultType="java.util.Map"parameterType="java.util.Map">select*fromtb_dormitory_infotwhere1=1<update><!-修改信息一><updateid=,'updateDormitoryInfo"parameterType="java.util.Map,'>updatetb_dormitory_info<set><iftest="d_name!=nullandd_name!=,",>d_name=#d_name,<if><iftest="manager_name!=nullandmanager_name!=,>manager_name=#manager_name),<if><if><set>whereid=#id<update>3) JSP页面部分代码<body><inputtype=11textuclass="form-contro,id=nco11tentnname="content"placeholder=,'y入搜索内容:宿舍名称;宿管老师;宿管电话”StyIe="Width:15%;float:right;margin-right:10pxf,><fbrm><div><tableid="dormitoryViewuclass=,tabletable-stripedtable-borderedtable-hoverdataTables-example,><table><divid="dormitoryPager11class=',pager11style=uclear:both;text-align:right;height:35px;"x/div><div><div><div><div><div><body>$(document).ready(function()CoINameSTlDr宿舍楼号?宿舍名称:宿管老师;宿管电话7学生数量最大容量”,'创建时间IColModel:namez'id,indexid',width,align"center",hiddenztrue,name:'d-no,index'd-no,width:80,align,center",name:'d_name',index丁d_name',Width:80,align:"Center",namefmanager-name,indexr'manager-namewidthJOO,align"center"),namemanager-phone',indexz'manager-phone',widthz80,alignucenter",name:'d_num',index:'d_num',Width:80,align:"Center",name:'d_max_num',index:'d_max_num',Width:80,align:"center",namefmanager-date,index'manager-date,widthJOO,align"center");3.4班级管理这个模块可以对班级数据进行修改、新增、删除等操作,还可以分配指导员和学生。3.4.1 班级列表列表显示的是班级的数据,显示的内容包括了学生人数、创建的时间等,并且以创建的时间为顺序对其进行了排列。双击列表以查看详细情况,详细情况页面中包含了一个班的基本资料以及那个班下的学生资料。3.4.2 功能描述这个模块包含了班级资料的增,减,改,查等功能。新增:增加了班级资料,辅导员的名字在下拉菜单中,资料来源于老师的管理资料。班名必须填写,不可重复。修改:此特性修正的原则与新增加的相同。另外,这一功能还包括了分配学生的功能。删除:此功能需要有一批删除的功能,使用一种软删除的方法,可以在以后的数据恢复。查询:搜索功能,可以根据班级名称,导师姓名,以及其他领域进行搜索。双击可查看课程详细信息。3.4.3 注意事项一个学生只能在一个班级中学习,在班级资料被删除之后,这个班级中的学生将会被视为没有被分组。3.4.4 数据库设计1)tb_class_info表用来存储班级的全部信息,其中有17个字段,其结构如表3-6所示。表3.6tb_class_infb表字段名字段含义数据类型id主键varchar(50)c_name班级名称varchar(50)t_id指导员idvarchar(50)t_name指导员varchar(50)t_phone指导员电话varchar(50)c_num学生数量varchar(50)manager_date创建时间datetimecourse_status是否排课(0:否;1是)varchar(10)del_flag删除标志(0:否;1是)varchar(10)3)tb_class_detail表是班级与教师的中间表,它可以用来记录老师与班级之间的关系,它有3个字段,它的结构如表3-7所示。表3.7tb_class_detail表字段名字段含义数据类型id主键varchar(50)c_id班级idvarchar(50)tea_id教师idvarchar(50)3.4.5页面与实现在左边的班级管理菜单中,按一下就可以看到宿舍的资料。这个表格的标题包含了班级的名字,老师的电话,学生人数,创建的时间。按下表格可进入课程详情页面,以了解课程详情。本模块具有新增,修改,删除等功能,还可以根据班级名称,辅导员,辅导员电话等条件,进行模糊搜索。等级列面显示在图3-7中:图3.8班级新增、修改效果图该模块的部分主要代码如下:1 )Java代码/* 跳转到班级管理页面* paramrequest* paramresponse*return*throwsException*/* 保存班级数据* param* paramrequest* paramresponse* ©return* throwsException* /Auth(Verify1.ogin=Irue)RequestMapping(value=VsaveClassInfon)public(三)ResponseBodyintsaveClassInfo(returni;12)Mybatis配置部分代码<!-获取班级信息-><selectid="getClassInfo"resultType="java.util.Map"parameterType="java.util.Map"><select><!-获取分页总数<selectid=11getClassCount11resultType="java.util.Map"parameterType="java.util.Map">select

    注意事项

    本文(基于JAVA的学生管理系统的设计与实现.docx)为本站会员(李司机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开