1、javaee课程设计信息管理系统需求分析 Java-ee课程设计 学生信息管理系统专 业 软件工程 学 号 201107111362 学生姓名 张力阳 任课教师 白彦峰 完成日期 2014 年 6 月 20日摘 要进行学生信息管理是高校重要工作之一。传统的学生信息管理由于是手工操作,工作量大且容易出错。随着计算机和网络技术的迅速发展,越来越多的院校都拥有自己的学生信息管理系统,而采用B/S架构的科研管理系统进行学生信息管理则是其趋势。J2EE技术的基础就是核心Java平台,它有许多优点,例如:“编写一次、随处运行”的特性、方便存取数据库的JDBC API, CORBA技术以及能够在Intern
2、et应用中保护数据的安全模式等等。J2EE体系结构提供中间层集成框架用来满足高可用性、高可靠性以及可扩展性的应用需求,为搭建具有可伸缩性、灵活性、易维护性的网络应用系统提供了良好的机制。本文基于J2EE平台技术、采用Browser/Server结构, 设计并实现了该系统中的项目管理系统。论文首先介绍了系统开发涉及的相关技术,主要围绕J2EE的相关技术和系统的体系结构。其次,介绍了高校学生管理系统的总体分析与设计,包括需求分析、功能模块分析和数据库设计。最后,利用JSP+JavaBean模式对项目管理系统进行了实现,并作了详细描述,主要采用图片与代码结合的方式详细地叙述了系统功能的实现。关键词:
3、学生信息管理系统,J2EE,JSP,J2EE框架目录1.项目背景 12.系统需求分析 12.1系统概述 12.2 系统的组成及各模块的功能 12.3 系统的运行环境 22.2.1硬件环境 22.2.2软件环境 23.系统设计 23.1总体结构设计 23.2数据库设计 34.系统实现 54.1登录模块的设计与实现 54.2学生信息管理模块的设计与实现 64.2.1学生信息录入的设计与实现 64.2.2学生信息查询的设计与实现 74.3课程信息管理模块的设计与实现 84.3.1课程信息录入的设计与实现 84.3.2课程信息查询的设计与实现 94.4成绩信息管理模块的设计与实现 114.4.1成绩信
4、息录入的设计与实现 114.3.2学生成绩查询的设计与实现 115.总结 126.源代码 136.1项目截图 136.2项目主要代码 136.2.1.CjAction.java主要代码 136.2.2.DIAction.java主要代码 166.2.3.XsAction.java主要代码 176.2.4其他的详细代码 201.项目背景 随着计算机技术的不断发展,网络技术的普及范围越来越广,网络能够提供的服务多样、便捷,已经成为人们生产生活中不可缺少的重要组成部分。越来越多的人依靠电子产品生活,而他们的日常工作也是离不开这些电子产品的。传统的学生信息管理由于是手工操作,工作量大且容易出错,所以开
5、发出一款学生信息管理系统系统,就显得必不可少了。 同时,也为了进一步巩固所学的J2EE语言基础知识,达到熟练编写、运用的程度;锻炼自己的面向对象的程序设计思想,能够深刻认识面向过程与面向对象两种设计方法之间的区别;熟练掌握具体软件开发平台下的动手能力,掌握J2EE应用程序设计的方法与技巧,实现从传统面向过程程序设计思维到面向对象程序设计思维的转型。2.系统需求分析 2.1系统概述学生信息管理系统采用jsp做前台,后台数据库采用sqlsever2008,本系统提供了三大模块,分别为学生信息管理、课程信息管理、成绩信息管理。这三个模块里又有相应的子模块,通过这些模块之间的连接配合,完成操作员发出的
6、各种指令。 本项目采用了MVC架构模式,通过对struts+hibernate+spring的整合,实现了项目model、view和controller层的分离,大大提高了对于系统的维护性和可扩展性。2.2 系统的组成及各模块的功能 本系统主要包括两大模块:学生信息管理,课程信息管理,成绩信息管理。 其中,学生信息管理子模块中包括:学生信息录入,学生信息查询; 课程信息管理子模块包括:课程信息录入,所有课程信息查询 成绩信息管理子模块中包括:成绩信息录入,学生成绩查询。 其中,1.学生信息录入的功能为:可以录入学生的基本信息,包括学号、性别、 姓名、专业等,其中,还可以上传学生照片。 学生信息
7、查询的功能为:可以查询学生的基本信息,并且可以进行详细 信息查询,对信息的修改和删除,可以分页查询。 2.课程信息录入的功能是:录入课程号、课程名、开课学期、学时和 分; 课程信息查询:查询所有课程的录入课程号、课程名、开课学期、学时 和学分;还可以删除和修改课程信息。 3.成绩信息录入的功能为:可以录入学生姓名、课程和成绩。 学生成绩查询的功能为:可以查询学生的成绩、学分,并且可以进行删 除。2.3 系统的运行环境 2.2.1硬件环境处理器:Inter Pentium 166MX 或更高内存: 32M以上硬盘空间:1GB以上显卡:SVGA显示适配器 2.2.2软件环境操作系统: Window
8、s 98/ME/2000/XP运行环境:MyEclipse、SqlSever、浏览器3.系统设计 3.1总体结构设计本系统开发采用目前一种广泛流行的软件设计模式MVC。MVC(Model-View-Controller)应用程序结构被用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,事应用程序设计变得更加容易。把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层-模型层、视图层、控制层。3.2数据库设计 整体表: XSB表:表3-1CJB表:表3-2DLB表:表3-3KCB表:表3-4ZYB表:表3
9、-5KCB表:表3-64.系统实现4.1登录模块的设计与实现 进入主界面是为登入之前用户点击左侧任意一个功能都会在右侧跳转到登陆界面;用户输入学号和口令,即可进入系统进行操作,界面如图4-1所示: 图4-1 4.2学生信息管理模块的设计与实现 用户登录成功后,进入主页,界面如图4-2所示: 图4-24.2.1学生信息录入的设计与实现 用户点击“学生信息录入”,可以录入学生的基本信息,包括学号、性别、 姓名、专业等,其中,还可以上传学生照片。界面如图4-3所示: 图4-3 4.2.2学生信息查询的设计与实现用户点击“学生信息查询”,可以查询学生的基本信息,并且可以进行详细信息查询,对信息的修改和
10、删除,可以分页查询。界面如图4-4所示: 图4-4用户点击“详细信息”,可以查询学生的详细信息,界面如图4-5所示: 图4-5用户点击“修改”,可以修改学生信息,界面如图4-6所示: 图4-64.3课程信息管理模块的设计与实现 4.3.1课程信息录入的设计与实现 管理者点击课程信息录入,可以实现对于课程信息的录入功能,界面如图4-7所示: 图4-7 4.3.2课程信息查询的设计与实现 管理者点击课程信息查询,可以查询所有课程信息,界面如图4-8所示: 图4-8点击删除、修改可以实现相应的删除和修改操作,界面如图4-9所示: 图4-9输入课程号可以查询相应的课程详细信息,如图4-10所示: 图4
11、-104.4成绩信息管理模块的设计与实现 4.4.1成绩信息录入的设计与实现用户点击“成绩信息录入”,可以录入学生姓名、课程和成绩,界面如图4-7所示: 图4-114.3.2学生成绩查询的设计与实现用户点击“学生成绩查询”,可以查询学生的成绩、学分,并且可以进行删除,界面如图4-8所示: 图4-12 点击学号可以查看详细信息,如图4-13所示; 图4-135.总结 通过对这次项目的实践,整合了SSH,并应用到系统中,开发过程中遇到各种各样的错误。在这个发现错误,了解错误出现的原因,查询资料,并且亲手去解决错误并使系统运行起来的过程,是一个不断自我提高的过程,不仅仅在技术方面,也包括在忍耐力和其
12、他品质方面。虽然这次采用了MVC的设计模式,将应用作为三层分开,但是对其意义还不是很明确,希望在以后的学习中能慢慢领悟。同时,对于学生信息管理系统的功能开发还不完善,在今后会继续完善功能。6.源代码 6.1项目截图 图6-1 图6-2 6.2项目主要代码 6.2.1.CjAction.java主要代码public class CjAction extends ActionSupport private Cjb cj;private CjService cjService; public Cjb getCj() return cj; public void setCj(Cjb cj) this.
13、cj = cj;public void setCjService(CjService cjService) this.cjService = cjService; private int pageNow=1;private int pageSize=8; private XsService xsService;private KcService kcService; public void setXsService(XsService xsService) this.xsService = xsService; public void setKcService(KcService kcServ
14、ice) this.kcService = kcService;public String execute() throws Exception List list1=xsService.findAll(1, xsService.findXsSize(); List list2=kcService.findAll(1, kcService.findKcSize(); Map request=(Map)ActionContext.getContext().get(request); request.put(list1, list1);request.put(list2, list2); retu
15、rn SUCCESS;public String addorupdateXscj()throws Exception Cjb cj1 = null;CjbId cjId1=new CjbId(); cjId1.setXh(cj.getId().getXh(); cjId1.setKch(cj.getId().getKch(); if(cjService.getXsCj(cj.getId().getXh(), cj.getId().getKch()=null) cj1 = new Cjb(); cj1.setId(cjId1);else cj1=cjService.getXsCj(cj.getI
16、d().getXh(), cj.getId().getKch(); Kcb kc1=kcService.find(cj.getId().getKch(); cj1.setCj(cj.getCj(); if(cj.getCj()60|cj.getCj()=60) cj1.setXf(kc1.getXf();else cj1.setXf(0); cjService.saveorupdateCj(cj1); return SUCCESS;public String findXscj()throws Exception List list=cjService.getXsCjList(cj.getId(
17、).getXh(); if(list.size()0) Map request=(Map)ActionContext.getContext().get(request); request.put(list,list);return SUCCESS; else return ERROR; public String deleteOneXscj()throws Exception String xh=cj.getId().getXh();String kch=cj.getId().getKch(); cjService.deleteCj(xh, kch);return SUCCESS;public
18、 String xscjInfo()throws ExceptionListlist=cjService.findAllCj(this.getPageNow(), this.getPageSize(); Map request=(Map)ActionContext.getContext().get(request); request.put(list,list); Pager page=new Pager(this.getPageNow(),cjService.findCjSize(); System.out.println(cjService.findCjSize(); request.pu
19、t(page, page);return SUCCESS; public int getPageNow() return pageNow; public void setPageNow(int pageNow) this.pageNow = pageNow; public int getPageSize() return pageSize; public void setPageSize(int pageSize) this.pageSize = pageSize; 6.2.2.DIAction.java主要代码public class DlAction extends ActionSuppo
20、rt private DlService dlService;private Dlb dl; public Dlb getDl() return dl; public void setDl(Dlb dl) this.dl = dl; public DlService getDlService() return dlService; public void setDlService(DlService dlService) this.dlService = dlService;public String execute()throws Exception Dlb user=dlService.f
21、ind(dl.getXh(), dl.getKl(); if(user!=null) Map session=(Map)ActionContext.getContext().getSession(); session.put(user, user); return SUCCESS;else return ERROR 6.2.3.XsAction.java主要代码public class XsAction extends ActionSupport private int pageNow=1;private int pageSize=8;private Xsb xs; private XsSer
22、vice xsService;private ZyService zyService; private File zpfile;private List list; public void setList(List list) this.list = list; System.out.println(list.size()+-); public List getList() return zyService.getAll(); public File getZpfile() return zpfile; public void setZpfile(File zpfile) this.zpfil
23、e = zpfile; public Xsb getXs() return xs; public void setXs(Xsb xs) this.xs = xs; public XsService getXsService() return xsService; public void setXsService(XsService xsService) this.xsService = xsService; public int getPageNow() return pageNow; public void setPageNow(int pageNow) this.pageNow = pag
24、eNow; public int getPageSize() return pageSize; public void setPageSize(int pageSize) this.pageSize = pageSize; public String execute() throws Exception System.out.println(this.getPageNow(); List list=xsService.findAll(pageNow,pageSize); Map request=(Map)ActionContext.getContext().get(request); Page
25、r page=new Pager(getPageNow(),xsService.findXsSize(); request.put(list, list);request.put(page, page); return SUCCESS;public String getImage() throws Exception HttpServletResponse request=ServletActionContext.getResponse(); String xh=xs.getXh();Xsb xs3=xsService.find(xh); byte img = xs3.getZp(); res
26、ponse.setContentType(image/jpeg); ServletOutputStream os = response.getOutputStream(); if ( img != null & img.length != 0 ) for (int i = 0; i img.length; i+) os.write(imgi); os.flush(); return NONE; public String findXs()throws Exception String xh=xs.getXh(); Xsb stu2=xsService.find(xh); Map request
27、=(Map)ActionContext.getContext().get(request); request.put(xs, stu2); return SUCCESS; public String deleteXs() throws Exception String xh=xs.getXh(); xsService.delete(xh);return SUCCESS; public String updateXsView()throws Exception String xh=xs.getXh();Xsb xsInfo=xsService.find(xh); List zys=zyServi
28、ce.getAll(); Map request=(Map)ActionContext.getContext().get(request); request.put(xsInfo, xsInfo); request.put(zys, zys); return SUCCESS; public String updateXs()throws Exception Xsb xs1=xsService.find(xs.getXh(); xs1.setXm(xs.getXm(); xs1.setXb(xs.getXb(); xs1.setZyb(zyService.getOneZy(xs.getZyb()
29、.getId(); xs1.setCssj(xs.getCssj();xs1.setZxf(xs.getZxf(); xs1.setBz(xs.getBz(); if(this.getZpfile()!=null) FileInputStream fis=new FileInputStream(this.getZpfile(); byte buffer=new bytefis.available(); fis.read(buffer);xs1.setZp(buffer); Map request=(Map)ActionContext.getContext().get(request); xsS
30、ervice.update(xs1);return SUCCESS; public String addXsView()throws Exception return SUCCESS; public String addXs() throws Exception Xsb stu=new Xsb();String xh1=xs.getXh(); if(xsService.find(xh1)!=null)return ERROR; stu.setXh(xs.getXh(); stu.setXm(xs.getXm(); stu.setXb(xs.getXb(); stu.setCssj(xs.getCssj(); System.out.println(xs.getCssj(); stu.s
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1