资源预览内容
第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
第9页 / 共13页
第10页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
下载可编辑基于java和mysql的学生基本信息管理系统1 系统需求分析1.1功能需求分析和功能设计根据学生信息管理综合分析,便出于方便管理考虑,将学生信息管理系统的功能总结起来,共需要实现以下几个方面功能: 学生信息的增加:管理员可以在数据库中增加学生信息。学生信息的修改:修改数据库中已经存在的学生信息。学生信息的删除:删除数据库中的学生信息。学生信息的查询:可以对学生信息进行查询操作,按学号、姓名、年龄来进行查询和排序。学生信息进行排序:按学号、姓名、年龄来进行排序。学生信息的导入和导出:将数据从数据库中导出到TXT、Word、Excel。2 学生信息管理系统设计2.1数据模型分析与设计本项目的关系数据模型的数据结构可分为两个表来表示:学生信息表(Person)、用户信息表(UserInfo)。学生信息表用于记录学生的基本信息,如表2-1;用户信息表用于记录系统用户的基本信息,如表2-2,这两个表对应的E-R图分别是:图3.1 学生信息E-R图;图3.2 课程信息E-R图;图 3.3 学生选课E-R图;如下图表2-1 学生信息表(Person)名称字段名称数据类型主键非空学号SnoVarcharYesYes姓名SnameVarcharNoYes性别SsexintNoNo年龄SageintNOYes籍贯ShomeVarcharNoNo家庭住址SaddressVarcharNoNo联系方式StelephoneVarcharNoNo表2-2 用户信息表(UserInfo)名称字段名称数据类型主键非空用户编号idInt YesYes用户名UnameVarchar(10)NoYes密码UpasswordVarchar(16)NoYes学生年龄学号学生姓名性别联系方式家庭住址籍贯图2.1 学生信息E-R图用户用户编号用户名密 码图2.2 用户信息E-R图2.2 结构设计与结构功能图2.2.1 结构设计根据对系统进行需求分析,本系统将分为4个模块: 学生管理管理学生基本信息,包括个人信息的添加、修改、删除、查询、按各种方式进行排序以及数据的导入的导出功能。 用户管理管理用户的基本信息,包括用户的添加、密码修改和用户删除。2.2.2 功能结构图用户管理增加修改删除学生管理添加删除修改信息查询按姓名查询按学号查询按年龄查询学生管理系统图2.2.2系统结构功能图3、系统实现该系统由6个模块构成,包括学生管理系统主界面模块、增加学生信息模块、查询学生信息模块、修改学生信息模块、删除学生信息模块和密码变更模块。下面分别加以叙述: 学生管理系统主界面模块学生管理系统主界面模块包括LoginFrame.java和MainFrame.java两个文件。LoginFrame是学生管理系统的登录对话框(如图3.1所示),登录成功后生成了学生管理系统的界面,MainFrame类继承自JFrame类,实现了ActionListener接口,他有一个带参数的构造方法MainFrame(LoginFrame lf),用来关闭LoginFrame的实例。MainFrame类将所有功能集中到菜单栏中,并通过调用其他模块来实现学生管理系统的各个功能,如图3.2所示。图3.1 学生管理系统登录界面图3.2 学生管理系统登录界面 学生信息添加模块学生信添加模块主要由 InsertStu.java 和数据库的接口文件PersonDAOimpl组成。其中InsertStu 是StuModel的子类,StuModel主要是生成界面,InsertStu接收用户输入,而PersonDAOimpl执行数据库的相关操作,这样使整个过程清楚明了。是StuMode该模块的流程图如下图3.3所示,界面如3.4所示:图3.3 添加学生信息流程图图3.4 学添加学生信息界面 查询学生信息模块课程信息管理模块主要由Search.java、PersonDAOimpl.java、TableFrame.java、这3个文件组成 。Search.java负责用户查询数据的接收,PersonDAOimpl.java负责数据库查询操作,TableFrame.java负责数据的显示工作。 流程图如图3.5所示: 图3.5 学生信息查询模块流程图 修改学生信息模块修改学生信息模块主要由 UpdateDialog.java、UpdateStu、PersonDAOimpl.java这3个文件组成,其中,UpdateDialog负责数据的接收,UpdateStu显示修改界面,PersonDAOimpl负责数据层的操作。流程图、界面如下: 删除学生信息模块这个模块主要是由DelDialog.java 、Delete.java、PersonDAOimpl.java组成。其中,DelDialog负责数据的接收,Delete显示修改界面,PersonDAOimpl负责数据层的操作。流程图、界面如下:4 系统调试与测试4.1系统功能测试功能测试主要是测试程序模块是否实现了设计中所要求的功能。功能测试中需要注意的有:(1)查询功能中,有按单一查询条件进行查询的,也有按多个查询条件组合查询的。这里要注意的多个查询条件之间的关系。 (2)录入功能中,需要注意的是前台设置的数值长度是否大于后台数值长度,以及前台和后台的数据结构是否相符,很多时候录入功能无法实现是由于这些原因。还有就是必须录入的字段的设置时候有误。(3)测试删除功能中需要注意的是单击删除按钮后,一般会出现提示信息,询问是否确定删除。通常情况下,我们单击确认按钮查看信息是否被删除掉了,而忽略了单击取消按钮后程序的反应:这时有可能的是没有删除,还有一种可能是即便单击了取消按钮,也一样删除了数据。另外,在删除多条记录的时候,要注意连续选中的几条记录是否真正都被删除掉了,即如果再按照这种查询方式查询,时候还能查询出来。有的时候需要在数据库中设立一个标志位,而不是真正的物理删除。所以在下一次查询中,可能还会被查询出来,这主要是因为在查询条件中没有将标志考虑在内。(4)关于修改功能的测试主要是看修改确认后是否数据真正已被修改了。这是最基本的功能,需要注意的是看是否能把不应该修改的数据也修改成功了。 4.2系统实施发布在编码结束以后,本人进行了如下测试:界面测试、功能测试、需求测试、性能测试。通过这几项的测试,基本可以保证系统的正常运行。4.3系统调试常见错误1.NullPointerException异常一般是对一个为NULL值的变量进行操作引起的。为避免这种异常,最好在对变量操作之前检查,看它是否为NULL值。2.SQLException异常一般是由于SQL语句不正确引起的。为避免这种异常,最好在使用SQL语句的程序中捕获此SQL异常。3.NumberFormatException异常这是由于数字的格式错误而出现的例外。为了避免出现此类错误,一般必须保证数据格式输入正确。4.数据库连接垃圾回收在实际的开发应用中,通常出现某一个对象未能关闭的情况,为了防止这种情况的发生,可以在有关对数据库操作的Java类文件中增加自动回收函数,在JVM自动地回收对象时,取出使用的连接对象,判断是否关闭,如果没有关闭则关掉。代码如下所示:protected void finalize() try If(getConn()!=null&!getConn().isClosed() rs.cloes(); stm.close(); conn.close(); catch(SQLException e).专业.整理.
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号