java程序设计课程论文.docx
- 文档编号:9096868
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:21
- 大小:21.65KB
java程序设计课程论文.docx
《java程序设计课程论文.docx》由会员分享,可在线阅读,更多相关《java程序设计课程论文.docx(21页珍藏版)》请在冰豆网上搜索。
java程序设计课程论文
成绩
课程论文
题目:
学生信息管理系统界面设计
课程名称:
java程序设计
学生姓名:
刘文璐
学生学号:
系别:
电子工程学院
专业:
通信工程
年级:
2013级
任课教师:
窦飞
电子工程学院制
2015年12月
学生信息管理系统界面设计
学生:
刘文璐
指导教师:
窦飞
电子工程学院通信工程专业
1、引言
学生信息管理系统以计算机为工具,将管理人员从繁琐的数据计算中解脱出来,全面的提高了管理的效率和质量,使得管理更加的规范和严谨。
世界处于信息化时代,人类的生活随着科技的发展越来越好,特别是计算机的出现,更加丰富了多姿多彩的生活。
作为新时代的大学生,要随时掌握和利用信息,辅之以科学文化知识,来适应社会发展的要求,将来为祖国奉献自己的一份力。
计算机Java语言是一门理论与实践共存的课程,但是更侧重于实践,因此,我们要将实践教学与理论教学达到密切结合。
2、Eclipse的介绍
Eclipse是一个开放的、基于的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java(JavaDevelopmentKit,)。
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
3、学生信息管理系统界面设计方案制定
3.1系统总体设计方案
有新生来报到,要逐个录入其信息,如:
学生姓名,性别,,出生日期,国籍。
要求设计链表类来实现,并统计学生人数。
文本界面为:
1.添加学生信息
2.删除学生信息
3.查询学生信息
4.修改学生信息
5.学生信息保存
6.退出
总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。
系统以菜单界面方式进行,每一条记录包括一个学生的姓名、性别、出生日期、国籍。
同时,应具备以下功能:
1、删除功能:
对指定学生的信息进行删除。
2、修改功能:
对指定学生的信息进行修改。
3、查询功能:
选择某种方式并输入该信息查询符合条件的学生信息。
4、添加功能:
添加新增学生信息。
5、退出主菜单。
3.2模块设计
3.2.1增加学生信息
判断**学生是否存在,若存在则错误,不存在则添加。
具体流程如下图所示:
新增学生信息
判断以前是否存储了学生信息是新增信息
按提示:
输入学个的各种信息
按格式显示输入的学生信息
退出该功能,返回主菜单,继续选择
图1增加学生信息流程图
3.2.2删除学生信息
删除学生的信息则必须对链表结点进行删除意味着将某个要删除结点前后的连续打断,去掉该结点,使前后指针变量重新连接,完成链表结点的删除任务
退出该功能,返回主菜单,继续选择
输入要删除信息的编号
输出所有学生的信息
输入要删除学生信息2
该生信息已删除,显示其他同学的信息
图2删除学生信息流程图
3.3.3、查询学生信息
按学生学号查询
退出该功能,返回主菜单,继续选择
输出所以查询的学生信息
按照提示输入学生的学号进行搜索
搜索学生信息
4
图3查询学生信息流程图
3.3.4、总功能模块图:
2、输入要删除的学生的学号,删除学生信息。
1输入学生的信息:
姓名、性别、、出生日期、国籍
菜单
7.新增学生信息
8.删除学生信息
9.学生信息查询
10.确实删除
11.确定修改
12.提交添加
13.退出
3、输入你要查找你学生学号
6提交添加
学生管理系统
功能模块图
5、退出系统
图4总功能模块图
5、运行结果与分析
图5程序实现图
查询学生信息
图6查询学生信息界面图
添加学生信息
图7添加学生信息界面图
6、总结及心得体会
经过将近两个星期的设计和整理,课程设计也差不多弄好了。
在这段时间里,我们遇到了很多问题,学会了很多东西。
刚开始的时候,我们以为这个设计只是一个很实际的编程而已,但是,当自己真正动起手来编程的时候,我们才发现这个设计并没有想象中的那么简单。
做课程设计让我们对Java有了全新的认识,它不像原来我们以为的那么枯燥,反而变得很有趣,我们学到了很多在上课时见都没有见过的类和方法,这让我们对编程又有了许多新的想法和认识。
在这期末考试前期,学院给我们安排的课程设计周,总让我们觉的有些为难我们,这样一个复杂困难而又繁琐的作业,似乎弄得我们既没有时间也没有心情复习,我们曾一度地抱怨过学院,在完成它之后,我们发现我们错了,课程设计不仅让我们巩固了所学的知识,还使得我们学习到了更多平时所忽略的,最重要的是,它磨砺了我们,让我们在大学的下一个阶段能更好的成长。
7、参考文献
[1]王昆,张力生.JavaSwing中的渲染器机制.重庆工学学院报,2008.[2]吕校春,李玲莉.基于Swing的JavaGUI组件开发[J].机械工程师,2008.[3]陆维厅,邵燕.基于JAVA的SOCKET实现网上交谈.河海常州分校学报,2005.[4]戴歆.JAVASwing程序开发.软件导刊,2007.[5]莫足琴.基于JavaSocket多客户端并发通信聊天程序的设计与实现.十堰职业技术学博士论文,2008.[6]王静,曲凤娟.基于Socket的多用户并发通信的设计[J].福建电脑,2007.[7]赵文清,姜波.基于Socket的Java语言网络通讯机制和程序设计.信息技术,2006.
[8]温涛.工程概念.软件工程师,2006.[10]朗波.JAVA语言程序设计.清华大学出版社,2005.
8、附录
importjava.awt.*;
import
importjavax.swing.*;
importjava.sql.*;
//主函数、主要类
publicclassJCTX{
publicstaticvoidmain(String[]args){
newFrm_Main();
}
}
//实现类
classFrm_MainimplementsActionListener//throwsIOException
{
publicJFrameframe;
publicContainerc;
publicJMenuBarmenuBar;
publicJMenumainMenu1;
publicJMenumainMenu2;
publicJMenumainMenu3;
publicJMenuItemsubMenu1[]=newJMenuItem[5];
publicJMenuItemsubMenu2[]=newJMenuItem[7];
publicJMenuItemsubMenu3[]=newJMenuItem[2];
JButtontoolBarButton[]=newJButton[8];
publicJToolBartoolBar;
StringstrTip[]={"查询您要找的学生记录...","添加学生记录...","删除已有的学生记录","修改学生记录...",
"使您修改的学生记录生效...","使您添加的学生记录生效...","确认删除当前记录...","退出本系统:
)"};
Stringid=newString();
Stringname=newString();
Stringsex=newString();
Stringbirthday=newString();
Stringaddress=newString();
Stringbirth=newString();
Connectionconn;
ResultSetrs;
Statementst;
PreparedStatementpst;
publicJLabelidL=newJLabel("学号:
");
publicJLabelnameL=newJLabel("姓名:
");
publicJLabelsexL=newJLabel("性别:
");
publicJLabeljlbirth=newJLabel("出生年月:
");
publicJLabeljladdr=newJLabel("籍贯:
");
publicJTextFieldidT=newJTextField();
publicJTextFieldnameT=newJTextField();
publicJTextFieldsexT=newJTextField();
publicJTextFieldjtbirth=newJTextField();
publicJTextFieldjtaddr=newJTextField();
publicFrm_Main(){
frame=newJFrame("学生信息管理系统");
c=frame.getContentPane();
c.setLayout(null);
menuBar=newJMenuBar();
toolBar=newJToolBar();
toolBar.setFloatable(false);
frame.setJMenuBar(menuBar);
frame.setResizable(false);
mainMenu1=newJMenu("管理");
Stringstr1[]={"添加用户","删除用户","查询用户","","退出"};
for(inti=0;i<5;i++){
if(i==3)
mainMenu1.addSeparator();
else{
subMenu1[i]=newJMenuItem(str1[i]);
subMenu1[i].addActionListener(this);
mainMenu1.add(subMenu1[i]);
}
}
menuBar.add(mainMenu1);
mainMenu2=newJMenu("维护学生信息");
Stringstr2[]={"查询记录","添加记录","删除记录","修改记录","提交修改","提交添加",
"确认删除"};
for(inti=0;i<7;i++){
subMenu2[i]=newJMenuItem(str2[i]);
subMenu2[i].addActionListener(this);
mainMenu2.add(subMenu2[i]);
}
menuBar.add(mainMenu2);
mainMenu3=newJMenu("帮助");
Stringstr3[]={"帮助...","关于..."};
for(inti=0;i<2;i++){
subMenu3[i]=newJMenuItem(str3[i]);
subMenu3[i].addActionListener(this);
mainMenu3.add(subMenu3[i]);
}
menuBar.add(mainMenu3);
StringstrToolBar[]={"查询","添加","删除","修改","提交修改","提交添加","确认删除"};
for(inti=0;i<7;i++){
toolBarButton[i]=newJButton(strToolBar[i]);
toolBarButton[i].setToolTipText(strTip[i]);
toolBarButton[i].addActionListener(this);
toolBar.add(toolBarButton[i]);
}
toolBar.setLocation(0,0);
toolBar.setSize(400,30);
c.add(toolBar);
idL.setLocation(35,40);
idL.setSize(40,20);
//idL.setFont(newFont("宋体",Font.BOLD,12));
c.add(idL);
idT.setLocation(90,40);
idT.setSize(200,20);
//idT.setEnabled(false);
c.add(idT);
nameL.setLocation(35,70);
nameL.setSize(40,20);
c.add(nameL);
nameT.setLocation(90,70);
nameT.setSize(200,20);
c.add(nameT);
sexL.setLocation(35,100);
sexL.setSize(40,20);
c.add(sexL);
sexT.setLocation(90,100);
sexT.setSize(200,20);
c.add(sexT);
jlbirth.setLocation(35,160);
jlbirth.setSize(40,20);
c.add(jlbirth);
jtbirth.setLocation(90,160);
jtbirth.setSize(200,20);
c.add(jtbirth);
jladdr.setLocation(35,190);
jladdr.setSize(40,20);
c.add(jladdr);
jtaddr.setLocation(90,190);
jtaddr.setSize(200,20);
c.add(jtaddr);
JLabelinformation=newJLabel("");
information.setFont(newFont("宋体",Font.BOLD,35));
information.setSize(380,110);
information.setLocation(10,210);
c.add(information);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400,400);
frame.setLocation(200,200);
frame.setVisible(true);
conDB();
}
//以上是设置数据库面版、框架
//以下是连接数据库
publicConnectionconDB(){
Connectioncon=null;
try{
Class.forName();
}catch(ClassNotFoundExceptione){
}
try{
con=DriverManager.getConnection(
"sa",
"111");
}catch(SQLExceptione){
JOptionPane.showMessageDialog(null,"数据库连接失败");
}
returncon;
}
//以下是关闭数据库
publicvoidcloseDB(){
try{
pst.close();
conn.close();
}catch(SQLExceptione){
JOptionPane.showMessageDialog(null,"数据库关闭失败!
");
}
}
//以下是针对数据库的各种操作
publicvoidactionPerformed(ActionEvente){
conn=conDB();
if(e.getSource()==subMenu3[1]||e.getSource()==toolBarButton[7])
JOptionPane.showMessageDialog(null,"");
if(e.getSource()==subMenu1[0]||e.getSource()==subMenu1[1]
||e.getSource()==subMenu1[2])
JOptionPane.showMessageDialog(null,"");
//查找功能的实现
if(e.getSource()==subMenu2[0]||e.getSource()==toolBarButton[0]){
Stringidid=JOptionPane.showInputDialog("请输入要查找的学生学号");
if(idid.trim()!
=""){
//StringstrSQL="select*fromstudentwhereid=’"+idid+"’";
StringstrSQL="select*fromstudentwhereid=";
try{
pst=conn.prepareStatement(strSQL);
pst.setString(1,idid);
rs=pst.executeQuery();
/*st=conn.createStatement();
rs=st.executeQuery(strSQL);*/
intcount=0;
while(rs.next()){
id=rs.getString("id");
name=rs.getString("name");
address=rs.getString("address");
sex=rs.getString("sex");
birth=rs.getString("birthday");
count++;
}
if(count==0)
JOptionPane.showMessageDialog(null,"对不起,没有您要查找的学生!
");
else{
idT.setText(id);
nameT.setText(name);
sexT.setText(sex);
jtaddr.setText(address);
jtbirth.setText(birth);
}
}catch(Exceptionex){
JOptionPane.showMessageDialog(null,"抱歉,程序出现异常!
");
}
}
}
if(e.getSource()==subMenu1[4]){
closeDB();
System.exit(0);
}
if(e.getSource()==subMenu2[1]||e.getSource()==toolBarButton[1]){
JOptionPane.showMessageDialog(null,"请输入要添加的学生信息");
idT.setEnabled(true);
idT.setText("");
nameT.setText("");
sexT.setText("");
jtaddr.setText("");
jtbirth.setText("");
}
if(e.getSource()==toolBarButton[5]||e.getSource()==subMenu2[5]){
if((idT.getText().trim()).equals("")
||(nameT.getText().trim()).equals("")
||(sexT.getText().trim()).equals("")
||(jtaddr.getText().trim()).equals("")
||(jtbirth.getText().trim()).equals(""))
JOptionPane.showMessageDialog(null,"请输入信息再点击提交添加!
");
else{
id=idT.getText();
name=nameT.getText();
sex=sexT.getText();
birthday=jtaddr.getText();
address=jtbirth.getText();
StringstrSQL="insertintostudentvalues(,,,,)";
try{
pst=conn.prepareStatement(strSQL);
pst.setString(1,id);
pst.setString(2,name);
pst.setString(3,sex);
pst.setString(4,address);
pst.setString(5,birthday);
pst.executeUpdate();
}catch(SQLExceptione1){
//TODOAuto-generatedcatchblock
//e1.printStackTrace();
JOptionPane.showMessageDialog(null,"数据库中已经存在您要添加的学生的学号!
");
return;
}
/*try{
pst.executeUpdate(strSQL);
}catch(Exceptionexx){
JOptionPane.showMessageDialog(null,"数据库中已经存在您要添加的学生的学号!
");
*idT.setText("");nameT.setText("");sexT.setText("");
*birthdayT.setText("");departmentT.setText("");
return;
}*/
JOptionPane.showMessageDialog(null,"恭喜您
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 程序设计 课程 论文