简单学生信息管理系统java课程设计_第1页
简单学生信息管理系统java课程设计_第2页
简单学生信息管理系统java课程设计_第3页
简单学生信息管理系统java课程设计_第4页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库课程设计- 简单学生信息管理系统学院:计算机科学学院专业:软件工程 02姓名:李欢欢目录1 设计目的 .错误 ! 未定义书签。2 设计任务 .22.1任务说明 .22.2系统目标 .22.2使用范围 .22.3功能要求 .23 设计内容.33.1界面构建 .33.2详细设计 .33.2.1模块设计 .33.2.2数据库设计 .33.2.3运行调试 .33.2.4主要源代码 .45 总结与展望 .7参考文献.错误 ! 未定义书签。1 设计目的本程序用于用户对少量学生信息进行简单的管理,本程序针对于对安全系数要求不高,操作不是很复杂的小型客户开发。本程序可以实现对学生信息的添加、查询、修改、

2、删除等操作,同时支持查看所有学生信息,功能完善,界面简洁美观,布局合理,操作简便,简单易用,任何人可轻松操作。同时,本程序对系统要求配置较低,运行速度快,而却对数据库管理要求较低该数据库可实现关系较为简单的数据管理。2 设计任务2.1 任务说明设计一个简单学生个人信息管理系统,该系统具有录入,查询,修改三项基本功能。要求如下:(1)具有简单的录入,查询和修改功能。(2)修改学生信息必须输入学号,然后对姓名、性别和专业等修改;(3)使用文件存储数据。(也可用数据库)(4)学生个人信息必须包括:学号、姓名、性别、籍贯、系别。2.2 系统目标软件开发的意图便于用户对学生的管理,方便查看学生的情况。如

3、用户对学生基本信息进行录入、查询、修改、删除等。2.2 使用范围本系统仅针对用户对少量学生进行信息管理。2.3 功能要求1 录入学生基本信息的功能2 查询学生基本信息的功能3 修改学生基本信息的功能4 删除学生基本信息的功能5 显示所有学生信息的功能3 设计内容3.1 界面构建1、为了便于各种操作,软件采用多窗口的模式。用户可在不同窗口进行相应操作(录入、查询、修改、删除、显示所有学生省信息) 。2 、主窗口是用户进行各种操作的平台,具体操作在各个独立功能窗口中完成。3 、主窗口的主要功能位于菜单中,菜单为进入各个功能窗口的唯一通道。4 、当用户在进行个别录入、删除或错误输入操作时,会弹出相应

4、对话框提示用户。如当录入成功或删除成功,弹出成功以及相应的简明信息提示当,当录入、删除失败以及输入不当是,弹出错误以及简单的错误原因提示用户重新操作。5 、界面布局尽量合理,各组件位置分布均匀美观。3.2 详细设计3.2.1 模块设进入界面添加删除修改查询3.2.2 数据库设计学生信息表3.2.3 运行调试操作界面添加学生信息修改学生信息查找学生信息3.2.4 主要源代码importimportimportimportpublicclassSqlHelper/对数据库进行操作PreparedStatementps =null ;Connectionct= null;ResultSetrs =

5、null;Stringdriver=;Stringurl=;Stringuser =sa;Stringpasswd= sa;publicvoidclose()tryif( rs!=null)rs.close();if( ps !=null)ps .close();if( ct!=null)ct.close();catch(Exception e)e.printStackTrace();publicResultSet queryExecute(String sql)tryClass.forName( driver);ct =DriverManager.getConnectionps = ct .

6、prepareStatement(sql);rs = ps .executeQuery();( url,user,passwd );catch(Exception e)e.printStackTrace();finallyreturnrs ;/ 查询数据库操作publicResultSet queryExectue(String sql,String paras)tryClass.forName( driver);ct=DriverManager.getConnection( url , user , passwd );ps = ct.prepareStatement(sql);for( in

7、t i=0; iparas.length; i+)ps .setString(i+1, parasi);rs = ps .executeQuery();catch(Exception e)e.printStackTrace();finallyreturnrs ;/ 把增、删、改放在一起对数据库操作SuppressWarnings( finally)publicbooleanupdExecute(String sql,String paras)booleanb= true;tryClass.forName( driver);ct =DriverManager.getConnectionps =

8、ct .prepareStatement(sql);for( inti=0; iparas.length( url , user , passwd ); ; i+)ps .setString(i+1, parasi);if( ps .executeUpdate()!=1)b=false;catch(Exception e)b=false;e.printStackTrace();finallyreturnb;importjavax.swing.*;importjava.sql.*;importjava.util.*;importimportimportimportimportimportjava

9、.awt.*;importimportimport/ 学生管理类publicclassStuMangerextendsJFrameimplementsActionListenerJPanelJLabelJButtonJTablejp1jl1jb1jt;, jp2;, jb2;, jb3, jb4;JScrollPanejsp;JTextFieldjtf;StuModms;publicstaticvoidmain(String args)StuManger s=new StuManger();publicStuManger()j p1=new JPanel();j tf=newJTextFiel

10、d(10);j b1=newJButton(查询);j b1.addActionListener(this);j l1=newJLabel( 请输入名字 );j p1.add(jl1);j p1.add(jtf);j p1.add(jb1);j p2=new JPanel();j b2=newJButton(添加);j b2.addActionListener(this);j b3=newJButton(删除);j b3.addActionListener(this);j b4=newJButton(修改);j b4.addActionListener(this);j p2.add(jb2);

11、j p2.add(jb3);j p2.add(jb4);ms = new StuMod();String paras=1;ms .queryStu(select * from stu where 1=?, paras);j t = new JTable(ms);j sp =newJScrollPane(jt );t his.add(jsp);t his.add(jp1, North);t his.add(jp2, South);t his.setSize(400,300);t his.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );t his.s

12、etVisible(true);publicvoidactionPerformed(ActionEvent e)/ TODO Auto-generated method stubif(e.getSource()=jb1 )System.out .println( 希望查询 );String name=this. jtf.getText().trim();String sql=select * from stu where stuName=?String paras=name;ms= new StuMod();ms.queryStu(sql, paras);jt.setModel(ms);els

13、eif(e.getSource()=jb2)StuAddDialog g=new StuAddDialog(ms= new StuMod();String paras2=1;ms.queryStu(select * from stu where 1=?jt.setModel(ms);this, 添加学生 , true, paras2););elseif(e.getSource()=jb4)introwNum= this. jt.getSelectedRow();if(rowNum=-1)JOptionPane.showMessageDialog( this , 请选择一行 );return;/

14、new StuUpdDialog(this, 修改 , true, ms,rowNum);ms= new StuMod();String paras2=1;ms.queryStu(select * from stu where 1=?, paras2);jt.setModel(ms);String stuId=(String)ms.getValueAt(rowNum,0);System. out.println(id=+stuId);/ 删除elseif(e.getSource()=jb3)introwNum=this. jt.getSelectedRow();if(rowNum=-1)JOp

15、tionPane.showMessageDialog( this, 请选择一行 );return;jt.setModel(ms);String stuId=(String)ms.getValueAt(rowNum,0);System.out.println(id= +stuId);String sql=delete from stu where stuid=?;String paras=stuId;StuMod temp=new StuMod();temp.updStu(sql, paras);ms=new StuMod();String paras2=1;ms.queryStu(select

16、 * from stu where 1=?, paras2);jt.setModel(ms);5 总结与展望做课设让我对java 有了新的认识,首先我接触了很多上课见过见过但没有实际用过的类和方法,让我对编程有了许多新的思想。大一学了 C语言,虽然当时学的还不错,由于学的都是入门知识,所以自己做的都是DOS下执行的程序,虽然可以实现一定的功能,但和自己平时用的软件相差很大。这学期刚开课学java 感觉没什么新鲜感,它的跨平台特性也只是听听,根本没有认识,知道学到第七章图形界面用户编程的时候,我发现学会之后自己可以做出来的软件就更接近平时使用的软件了,不过由于平时学习不刻苦,到时没有时间静下心来

17、写java 代码,知道结课做课设,才静下心来开始研究java ,结合以前的编程知识,做起了自己的程序。我曾经用 c 语言做过这个系统,做起来会比较熟练,同时想通过做课设学习一点数据库的知识,感觉这些知识更贴近实际应用,选好之后开始准备课设,先从最简单的主窗体,到主窗体的菜单,组件添加,再到各个功能的独立窗体的建立,再到最后的数据库连接,功能的实现,一步步走来,收获颇多。其中独立窗体中的组件排版是碰到的第一个问题,最简单的方法是在建每个窗体时把所有需要的组件全部重新添加进去,但是这样代码会很长,而却会多占很多内存空间, 于是我决定把个功能窗体中共同的组件在一个新方法中统一加载,为了减小占内存空间,组建的在主类的构造方法中生成,所有独立功能窗口公用组件,这样既减少了代码额长度,又提高了程序的内存利用率。还有很多问题,都在权衡之后得到了较优的解决方法。它能够使这次课设还让我对 java 的跨平台性有了进一步认识,当我学好代码兴致勃勃的想把它做成 exe 可执行文件时,在网上搜索之后发现它似乎很难实现,就是应为它的 java 语言的实现机制,通过 jre 来执行执行 java 代码,而不是调用系统本地代码。除此之外我还学到了新的编程技巧, 比如对 try ,catch的运用。刚学的时候就是照书本上的打,很不情愿但是必须

温馨提示

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

评论

0/150

提交评论