课程设计课程设计名称:Java小学期课程实践专业班级:软件1201学生姓名:黑晓学号:201216040114指导教师:王社伟课程设计时间:2014.6.16-2014.6.27教师信息管理系统一、需求分析教师信息管理系统主要用于实现用户名的登陆,退出,教师信息的添加,查找,删除,修改等功能。本系统的开发需要实现以下功能模块:对系统的图形界面化进行操作,对sql数据库的连接,关闭等基本操作,以及对JAVA编程设计的的基本功能的实现。图形界面化:通过java进行设置按钮与监听,对整个页面布局的设置,使用户可以清楚地知道下面的操作。登陆功能:能够通过用户名和密码限制登陆,当出现错误时,能够提示。添加功能:通过编程实现连接数据库,将运行的结果存储到数据库里,同时显示出来,要求清楚明了。删除功能:在显示出来后,将你认为不重要,或者不存在的信息删除,保证动态信息的实际合理性。修改功能:如果存储的信息与实际不符,就需要进行修改,修改完后再存储到数据库。数据库的连接:通过sql的部分操作,进行开启与连接等操作。二、概要设计系统的模块图如下图所示:教师信息管理系统添加信息查询信息修改信息退出删除信息流程解释:登陆界面后进行操作,添加信息,修改信息,删除信息,显示信息等。此时通过数据库的连接可以得到教师信息。然后退出系统其中添加:三、运行环境、开发语言1软件环境l操作系统:Windows98/ME/2000/XP/Windows72硬件环境l处理器:IntelPentium166MX或更高l内存:32MBl硬盘空间:1GB显卡:SVGA显示适配3开发工具:MyEclipse8.5添加教师信息姓名电话科目邮箱四、详细设计1程序清单Classxinjian;Classchaxun;Classshanchu;Classxiugai;Classshowflowlayou;Classshowgridlayou;Classadd;以及main2主要代码主界面添加教师信息功能publicvoidactionPerformed(ActionEvente){if(jtf姓名.getText().length()=0||jtf电话.getText().length()=0||jtf科目.getText().length()=0||jtf邮箱.getText().length()=0){JOptionPane.showMessageDialog(null,您输入的信息不全,请重新输入!);}else{try{ps=ShowFlowLayout.con.prepareStatement(insertintofriendvalues(?,?,?,?));ps.setString(1,jtf姓名.getText());ps.setString(2,jtf电话.getText());ps.setString(3,jtf科目.getText());ps.setString(4,jtf邮箱.getText());ps.executeUpdate();}catch(SQLExceptione1){//TODOAuto-generatedcatchblocke1.printStackTrace();}JOptionPane.showMessageDialog(null,教师数据录入成功);frame.dispose();}}});修改教师信息功能publicvoidactionPerformed(ActionEvente){try{ps=ShowFlowLayout.con.prepareStatement(select*fromfriendwherename=?);ps.setString(1,jtf请输入你要修改教师的姓名.getText());rs=ps.executeQuery();if(!rs.next())JOptionPane.showMessageDialog(null,此教师不存在!);else{ps=ShowFlowLayout.con.prepareStatement(deletefromfriendwherename=?);ps.setString(1,jtf请输入你要修改教师的姓名.getText());ps.executeUpdate();newxinjian();}}catch(SQLExceptione2){//TODOAuto-generatedcatchblocke2.printStackTrace();}}删除教师信息功能publicvoidactionPerformed(ActionEvente){try{ps=ShowFlowLayout.con.prepareStatement(select*fromfriendwherename=?);ps.setString(1,jtf请输入你要删除教师的姓名.getText());rs=ps.executeQuery();if(!rs.next())JOptionPane.showMessageDialog(null,此教师不存在!);else{ps=ShowFlowLayout.con.prepareStatement(deletefromfriendwherename=?);ps.setString(1,jtf请输入你要删除教师的姓名.getText());ps.executeUpdate();JOptionPane.showMessageDialog(null,删除成功!);frame.dispose();}}catch(SQLExceptione2){//TODOAuto-generatedcatchblocke2.printStackTrace();}}查询教师信息功能publicvoidactionPerformed(ActionEvente){PreparedStatementpstmt;ResultSetrs;try{pstmt=ShowFlowLayout.con.prepareStatement(select*fromfriendwherename=?);pstmt.setString(1,jtf请输入你要查找教师的姓名.getText());rs=pstmt.executeQuery();if(rs.next())JOptionPane.showMessageDialog(null,姓名+rs.getString(1)+\n电话+rs.getString(2)+\n科目+rs.getString(3)+\n邮箱+rs.getString(4));elseJOptionPane.showMessageDialog(null,无此教师!);}catch(SQLExceptione1){e1.printStackTrace();}}}五、调试与分析1.出现问题:编码问题,输入时有错;解决方法:通过网上查找发现是编码的问题,修改编码内容格式使问题解决。2.出现问题:有错误但不影响运行解决方法:小的语法错误软件可以自动解决。3.出现问题:界面设计时有的内容看不到;解决方法:搜索之后发现是覆盖性错误,进行内容修改,得到解决。4.出现问题:连接数据库时出现问题。解决问题:数据库未开启,连接的地址发生错误。六、功能测试添加教师信息管理功能删除教师信息功能修改教师信息功能查询教师信息管理功能七、结论与心得在这次课程设计中我做的是一个教师管理系统。教师信息管理系统主要用于实用户名的登陆,退出,教师信息的添加,查找,删除,修改等功能。本系统的开发需要实现以下功能模块:对系统的图形界面化进行操作,对sql数据库的连接,关闭等基本操作,以及对JAVA编程设计的的基本功能的实现。首先是界面的设计上,我用的是java的设计方法,ecilise软件的使用和sql数据库的使用尚不熟练。其次是与数据库的连接上,在与数据库的交互时有时候会遇到参数传递的错误导致连接不成功,地址错误或者参数错误以及数据库操作错误,这些错误导致完成速度较慢。最后是java编程的时候关于语法以及思维逻辑有点混乱导致走了许多弯路。在以后的学习中,我会试着专注逻辑以及语法的使用,数据库的使用,争取做到流畅的编写系统,用于学习生活中。八、参考资料[1]CayS.Horstmann,GaryCornell.CoreJavaVolumeI:Fundamentals.8thEdition.PrenticeHall,2008.[2]CayS.Horstmann,GaryCornell.CoreJavaVolumeII:AdvancedFeatures.8thEdition.PrenticeHall,2008.[3]MaydeneFisher,JonEllis,JonathanBruce.JDBCAPITutorialandReference.3rdEdition.AddisonWesley,2003.[4]耿祥义、张跃平.JAVA2实用教程(修订).清华大学出版社,2001.10[5](美)CayS.Horstmann、GaryCornell.Java核心技术卷I:基础知识(第8版)(英文影印版).人民邮电出版社,2008.11.