java课程设计报告(教室管理系统)

合集下载

基于java web 的教务管理系统设计与实现

基于java web 的教务管理系统设计与实现

教务管理系统是现代教育管理中必不可少的一部分,它通过信息技术手段帮助学校高效地管理学生信息、教师信息、课程安排、成绩管理等方面。

随着互联网技术的发展,传统的教务管理方式已经无法满足学校管理的需求,因此设计一个基于Java Web的教务管理系统将会带来革命性的改变。

本文将探讨教务管理系统的设计与实现,主要包括系统的需求分析、系统的架构设计、系统模块的实现等方面。

一、需求分析在设计教务管理系统前,首先要对系统的需求进行全面、深入的分析。

主要包括以下几个方面的需求:1. 学生管理:包括学生基本信息的录入、修改、删除,学生课程的选取、查看成绩等功能。

2. 教师管理:包括教师基本信息的录入、修改、删除,教师课程的安排、成绩录入等功能。

3. 课程管理:包括课程信息的录入、修改、删除,课程的排课、教室安排等功能。

4. 成绩管理:包括成绩录入、成绩统计、成绩查询等功能。

5. 班级管理:包括班级信息的录入、修改、删除,班级学生的管理等功能。

6. 系统管理:包括系统用户的权限管理、数据备份、日志管理等功能。

二、系统架构设计基于Java Web的教务管理系统主要分为前台展示系统和后台管理系统两部分。

其中前台展示系统主要提供给学生、教师和家长使用,包括学生信息查询、课程管理、成绩查询等功能;后台管理系统主要提供给教务处老师和管理员使用,包括教师、课程、班级、成绩等信息的管理和维护。

系统采用B/S架构,即浏览器/服务器架构。

前台展示系统通过浏览器访问,后台管理系统通过服务器端进行管理。

系统采用MVC(Model View Controller)设计模式,将业务逻辑、数据模型、用户界面分离,提高系统的可维护性和扩展性。

三、系统模块的实现1. 用户管理模块用户管理模块是整个系统的核心模块,包括用户注册、登入、权限管理等功能。

在系统中,用户分为管理员、教师、学生和家长四种角色,每种角色对应不同的权限和功能。

2. 学生管理模块学生管理模块包括学生基本信息的录入、修改、删除,学生选课、成绩查询等功能。

基于JAVA的高校教师工作量管理系统设计与实现的开题报告

基于JAVA的高校教师工作量管理系统设计与实现的开题报告

基于JAVA的高校教师工作量管理系统设计与实现的开题报告一、选题背景随着高校教育的不断发展和完善,高校教师的教学和科研工作量也越来越大,因此需要对教师的工作量进行有效管理。

采用计算机辅助的信息化管理方式能够更快速、准确地掌握教师的工作负荷情况,为教育管理人员提供科学依据。

因此,本文拟以此为背景,设计和开发一款基于JAVA的高校教师工作量管理系统。

二、选题意义1.合理分配教师资源教师工作量管理系统能够帮助管理者合理分配教师资源,减轻教师工作压力,提高教师工作效率,从而更好地发挥教师的作用。

2.提高教学素质通过教师工作量管理系统,学校管理者可以清晰地了解到每位教师的工作量情况,对教师的教学工作进行有效监管和指导,进而提高教师的教学素质,提升学校的教学质量。

3.降低管理成本采用计算机管理方式能够实现数据的快速、准确地处理,降低管理成本,并且更便于管理者对教学情况的了解和统计。

三、研究内容本文拟设计和实现一款基于JAVA的高校教师工作量管理系统。

该系统的主要功能包括:1.教师信息的管理包括教师的基本信息、职称、任职情况、教学安排等信息的录入、修改、查询和删除。

2.工作量统计功能通过对教师的教学、科研和管理工作量的统计和计算,计算教师的工作量系数,进而了解教师工作量,为学校管理者提供依据。

3.绩效考核功能通过对教师工作量统计后的数据进行计算,计算教师的绩效,为学校管理者提供教师考核的科学依据,同时也能激励教师更好地完成工作任务。

四、研究计划1.系统需求分析进行高校教师工作量管理系统的用户需求、功能需求、数据需求等方面的调研,形成详细、系统的需求分析报告。

2.系统总体设计根据需求分析报告,进行系统总体架构设计和模块分析,并完成系统的概要设计和详细设计。

3.系统编码实现根据概要设计和详细设计,进行系统的编码实现和数据库设计,完成系统的开发实现。

4.系统测试和维护对系统进行全面测试和验收,并根据用户的反馈意见进行修改和优化。

java课程设计实验报告

java课程设计实验报告

java课程设计实验报告一一实验目的加深学生对课堂讲授内容的理解,从计算机语言的基本概念、程序设计的基本方法、语法规则等方面加深理解,打好程序设计、开发软件的良好基础。

在上机实验中,提高学生对Java语言各部分内容的综合使用能力,逐步掌握Java语言程序设计的规律与技巧。

在对Java程序的调试过程中,提高学生分析程序中出现的错误与排除这些错误的能力。

通过上机实践,加深学生对计算机软件运行环境,以及对操作系统与计算机语言支持系统相互关系的了解。

二、实验要求(1)问题描述准确、规范;(2)程序结构合理,调试数据准确、有代表性;(3)界面布局整齐,人机交互方便;(4)输出结果正确;(5)正确撰写实验报告。

三、设计内容11、计算器计算器要有GUI界面,用户可以输入所需计算的数值,可以进行加、减、乘、除四种最基本的运算与混合运算,可以求一个数值的平方及倒数,可以进行阶乘运算,要能运算小数,并且不会产生精度损失,在必要情况下,可以进行四舍五入的运算。

允许正负数间的运算。

要求使用Applet实现该计算器,当用浏览器运行程序时,点击网页中的按钮,则计算器弹出,浮在网页上,再次点击按钮时,计算器消失。

22、文本编辑器可以设置文本的字体、大小、颜色等基本参数,可以读取计算机中TXT文件,可以生成一个新的TXT文件。

其她功能参照windows的文本编辑器。

四四.实验步骤(1)上机实验之前,为课程设计的内容作好充分准备。

对每次上机需要完成的任务进行认真的分析,画出程序流程图,手工写出符合任务要求的程序清单,准备出调试程序使用的数据,以便提高上机实验的效率。

(2)按照实验目的与实验内容进行上机操作。

录入程序,编译调试,反复修改,直到使程序正常运行,得出正确的输出结果为止。

(3)根据实验结果,写出实验报告。

五、、源代码及运行结果1.计算器源代码importjava、awt、*;importjava、awt、event、*;importjava、lang、*;importjavax、swing、*;publicclassjisuanqiextendsWindowAdapter{//创建三个面板Panelp1=newPanel();Panelp2=newPanel();Panelp3=newPanel();TextFieldtxt;privateButton[]b=newButton[21];privateStringss[]={"7","8","9","/","清空","4","5","6","*","1/x","1","2","3","-","平方","0","、","=","+","n!","关闭"};staticdoublea,sum=1;staticStrings,str;//定义变量创建对像//创建文本框publicstaticvoidmain(Stringargs[]){(newjisuanqi())、frame();}publicvoidframe(){//设置文本框的名称Framefm=newFrame("简单计算器");for(inti=0;i<=20;i++){b[i]=newButton(ss[i]);}for(inti=0;i<=19;i++){p2、add(b[i]);//创建按钮并添加到P2}//按钮20背景色黄色b[20]、setBackground(Color、yellow);txt=newTextField("");txt、setEditable(false);//不能编辑文本框里面的内容txt、setBackground(Color、white);for(inti=0;i<=20;i++){b[i]、addActionListener(newbuttonlistener());//添加监听器}//设置关闭按钮b[20]、addActionListener(newclose());fm、addWindowListener(this);p1、setLayout(newBorderLayout());//设置布局管理器p1、add(txt,"North");//p1面板放到区域南部p2、setLayout(newGridLayout(4,5,2,2));//布局:四行五列,间隔为二p2、setBackground(Color、red);p3、setLayout(newBorderLayout());p3、add(b[20]);将三个面板分别放到不同位置fm、add(p1,"North");fm、add(p2,"Center");fm、add(p3,"South");fm、pack();fm、setVisible(true);//都就是些窗中设置添加相关组件与监听器}publicvoidwindowClosing(WindowEvente){System、exit(0);//退出系统}classbuttonlistenerimplementsActionListener{//编写监听器事件通过按键得出给果publicvoidactionPerformed(ActionEvente){Buttonbtn=(Button)e、getSource();if(btn、getLabel()=="="){jisuan();str=String、valueOf(a);txt、setText(str);//显示当前数字s="";//清零}elseif(btn、getLabel()=="+"){//设置一个方法jisuan();txt、setText("");s="+";}elseif(btn、getLabel()=="-"){jisuan();txt、setText("");s="-";}elseif(btn、getLabel()=="/"){jisuan();txt、setText("");s="/";}elseif(btn、getLabel()=="*"){jisuan();txt、setText("");s="*";}elseif(btn、getLabel()=="平方"){a=Double、parseDouble(txt、getText()); a*=a;txt、setText(""+String、valueOf(a)); }elseif(btn、getLabel()=="n!"){a=Double、parseDouble(txt、getText());sum=1;for(inti=1;i<=a;i++)sum=sum*i;txt、setText(""+String、valueOf(sum));}elseifbtn、getLabel()=="1/x"){a=Double、parseDouble(txt、getText());txt、setText(""+String、valueOf(1/a));}else{txt、setText(txt、getText()+btn、getLabel()); if(btn、getLabel()=="清空")txt、setText("");}}publicvoidjisuan(){//编写具体计算方法if(s=="+")a+=Double、parseDouble(txt、getText()); elseif(s=="-")a-=Double、parseDouble(txt、getText()); elseif(s=="*")a*=Double、parseDouble(txt、getText()); elseif(s=="/")a/=Double、parseDouble(txt、getText()); elsea=Double、parseDouble(txt、getText()); }}}classcloseimplementsActionListener {//退出publicvoidactionPerformed(ActionEvente) {System、exit(0);}}、2、计算器运行界面(11)计算器主界面(22)面板的实现11、创建三个面板分别就是显示数字的面板、按钮的面板与“关闭”的面板Panelp1=newPanel();Panelp2=newPanel();Panelp3=newPanel();22、创建一个文本框参数TextFieldtxt;33、创建一群按钮参数并给按钮赋值privateButton[]b=newButton[21];privateStringss[]={"7","8","9","/","清空","4","5","6","*","1/x","1","2","3","-","平方","0","、","=","+","n!","关闭"};44、创建文本框publicstaticvoidmain(Stringargs[]){(newjisuanqi())、frame();}55、设置文本框方法publicvoidframe(){//设置文本框的名称Framefm=newFrame("简单计算器");66、设置按钮for(inti=0;i<=20;i++){b[i]=newButton(ss[i]);}77、设将按钮添加到面板for(inti=0;i<=19;i++){p2、add(b[i]);//创建按钮并添加到P2}88、设置按钮020背景色黄色b[20]、setBackground(Color、yellow);99、创建文本框,,并规定不能编辑内容与背景为白色txt=newTextField("");txt、setEditable(false);txt、setBackground(Color、white);10、为按钮添加监听器for(inti=0;i<=20;i++){b[i]、addActionListener(newbuttonlistener());//添加监听器}11、设置“关闭”按钮可以关闭界面并设置监听器b[20]、addActionListener(newclose());fm、addWindowListener(this);12、设置布局p1、setLayout(newBorderLayout());//设置布局管理器p1、add(txt,"North");//p1面板放到区域南部p2、setLayout(newGridLayout(4,5,2,2));//布局:四行五列,间隔为二p2、setBackground(Color、red);p3、setLayout(newBorderLayout());p3、add(b[20]);13、将三个面板分别放到不同位置fm、add(p1,"North");fm、add(p2,"Center");fm、add(p3,"South");fm、pack();fm、setVisible(true);//都就是些窗中设置添加相关组件与监听器}14、退出系统publicvoidwindowClosing(WindowEvente){System、exit(0);}(33)将按钮添加到计算这个事件中11、编写监听器事件通过按键得出给果publicvoidactionPerformed(ActionEvente){//将按钮赋予这个事件中Buttonbtn=(Button)e、getSource();22、如果点击“==”这个按钮,,将出现当前数字if(btn、getLabel()=="="){jisuan();str=String、valueOf(a);txt、setText(str);//显示当前数字s="";//清零}33、如果点击“++”“--”“**”“//”分别完成一个方法并将结果显示到文本框elseif(btn、getLabel()=="+"){//设置一个方法jisuan();txt、setText("");s="+";}elseif(btn、getLabel()=="-") {jisuan();txt、setText("");s="-";}elseif(btn、getLabel()=="/") {jisuan();txt、setText("");s="/";}elseif(btn、getLabel()=="*"){jisuan();txt、setText("");s="*";}44、如果点击“平方”则当前数字与原数字形成即完成相关方法结果显示最终的数字elseif(btn、getLabel()=="平方"){a=Double、parseDouble(txt、getText());a*=a;txt、setText(""+String、valueOf(a));//显示a}55、当输入“nn!”,,就用rfor循环完成阶乘,,此方法属于cc语言基础方法,,不做相关解释elseif(btn、getLabel()=="n!"){a=Double、parseDouble(txt、getText());sum=1;//归一for(inti=1;i<=a;i++)sum=sum*i;txt、setText(""+String、valueOf(sum));//文本框中显示“sum”的数值}66、当输入“1/x”时,,显示1/a。

课程信息管理系统java课程设计

课程信息管理系统java课程设计

课程信息管理系统java课程设计一、课程目标知识目标:1. 学生能够掌握Java语言基础,包括数据类型、控制结构、类与对象等;2. 学生能够理解课程信息管理系统的功能需求,掌握系统设计的基本原理;3. 学生能够运用所学知识,实现课程信息管理系统的基本功能模块。

技能目标:1. 学生能够运用Java语言编写程序,实现课程信息管理系统的功能;2. 学生能够运用面向对象编程思想,进行系统设计和模块划分;3. 学生能够运用调试工具,调试并优化自己的程序。

情感态度价值观目标:1. 学生通过课程学习,培养对编程的兴趣和热情;2. 学生在团队协作中,学会沟通、分享和承担责任;3. 学生能够认识到编程在生活中的应用,提高对信息技术的认识。

课程性质:本课程为实践性较强的学科,要求学生结合所学理论知识,动手实践,培养编程能力和实际应用能力。

学生特点:学生处于高年级阶段,具有一定的Java编程基础,对面向对象编程有一定的了解,具备一定的自主学习能力。

教学要求:结合课程性质、学生特点,注重理论与实践相结合,培养学生的编程能力和实际应用能力。

通过课程学习,使学生能够独立完成课程信息管理系统的设计与实现。

同时,关注学生的情感态度价值观培养,提高学生的团队协作能力和信息技术素养。

将课程目标分解为具体的学习成果,便于后续教学设计和评估。

二、教学内容1. Java语言基础回顾:数据类型、控制结构、数组、类与对象等基本概念;2. 面向对象编程:封装、继承、多态等核心概念,以及设计模式初步了解;3. 课程信息管理系统需求分析:梳理系统功能,明确模块划分;4. 数据库基础:SQL语句编写,数据库连接与操作;5. Java图形用户界面(GUI)设计:Swing组件的使用,界面布局与美化;6. 课程信息管理系统的设计与实现:- 系统架构设计:分层设计,模块划分;- 功能模块开发:课程信息添加、修改、删除、查询等;- 系统测试与优化:测试用例设计,性能优化;7. 项目实践与团队协作:分组进行项目实践,培养学生的团队协作能力。

教室管理系统java课程设计

教室管理系统java课程设计

教室管理系统java课程设计一、教学目标本课程旨在通过Java编程语言实现一个简单的教室管理系统,让学生掌握Java编程的基本语法、面向对象编程思想以及数据库操作。

在知识目标上,要求学生了解Java语言的基本数据类型、控制结构、类与对象、继承与多态等核心概念;在技能目标上,要求学生能够运用Java语言独立完成一个小型项目的开发;在情感态度价值观目标上,培养学生对编程的兴趣,提高学生解决问题的能力。

二、教学内容本课程的教学内容主要包括Java语言的基本语法、面向对象编程、数据库操作以及项目实践。

具体安排如下:1.第一章:Java语言概述,学习Java语言的基本语法,包括数据类型、控制结构等。

2.第二章:面向对象编程,学习类与对象、继承与多态等概念,并能够运用这些知识解决实际问题。

3.第三章:数据库操作,学习SQL语言的基本操作,包括创建表、插入数据、查询数据等。

4.第四章:项目实践,利用所学知识完成一个教室管理系统的开发。

三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法和实验法等。

在教学过程中,教师将引导学生通过查阅教材、编写代码、分析案例、讨论问题等方式,深入理解Java编程语言和数据库操作的相关知识,并能够运用这些知识解决实际问题。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:1.教材:《Java编程思想》、《SQL基础教程》等。

2.参考书:提供一些与课程相关的参考书籍,供学生自主学习。

3.多媒体资料:制作课件、教学视频等,以图文并茂的形式呈现教学内容。

4.实验设备:提供计算机实验室,让学生能够进行实际操作和练习。

五、教学评估本课程的教学评估将采用多元化评价方式,全面反映学生的学习成果。

评估方式包括平时表现、作业、考试等。

平时表现主要评估学生的课堂参与度、提问回答、团队协作等情况;作业分为编程练习和理论作业,要求学生按时完成,并对作业质量进行评估;考试分为期中和期末考试,内容涵盖课程所有知识点,采用闭卷考试方式。

JAVA教师管理系统

JAVA教师管理系统

2.2 功能需求分析
教室管理系统应用软件其功能需求如下: 教室信息录入功能:用户可以录入教室信息,并保存到数据库中; 教师信息录入功能:用户可以录入教师信息,并保存到数据库中; 教室安排信息录入功能:用户可以录入教室安排信息,并保存到数据库 中; 教师信息查询功能:从主界面切换到查看界面,在该界面里显示有所有 的教师信息,单击查询按钮进行查询; 教室信息查询功能:从主界面切换到查看界面,在该界面里显示有所有
setBounds(500, 10, 650, 400);
setVisible(true);
- 10 -
面向对象程序设计(java)综合设计报告
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
信息显示代码: String n1[] = {}; String n2[] = {" "}; com1.addItem(""); for (int i = 0; i < n1.length; i++) { com1.addItem(n1[i]); } com2.addItem(""); for (int j = 0; j < n2.length; j++) { com2.addItem(n2[j]); } pan1.add(com1); com1.addItemListener(this); com1.setBounds(10, 50, 80, 30); pan2.add(com2); com2.addItemListener(this); com2.setBounds(10, 50, 80, 30); 信息修改代码: if (comnum1 == 0) { Box1.removeAll(); } if (comnum1 == 1) { Box1.removeAll(); Box1.add(new JLabel(")); Box1.add(text); text.setText(""); Box1.add(button6);

Java课程设计---教职工档案管理系统

Java课程设计---教职工档案管理系统

关键算法实现
数据结构选择:使用数组或链表来存储教职工信息,以便快速访问。 查询算法:实现高效的查询算法,如二分查找,以便快速查找特定教职工的信息。 排序算法:使用快速排序或归并排序对教职工信息进行排序,以便按照特定顺序显示信息。 插入和删除算法:实现插入和删除教职工信息的算法,以确保数据结构的稳定性和可靠性。
操作系统:使用 Linux系统,提 供安全、稳定的 运行环境。
数据库:选择 MySQL数据库, 确保数据存储的 安全性和可靠性。
部署方式:采用 Docker容器化 部署,实现快速 部署和容器管理。
系统维护
数据库备份与恢复 系统升级与补丁安装 故障诊断与排除 定期检查与维护
系统升级与优化
升级方式:手动升 级和自动升级
数据需求分析
教职工信息:姓 名、性别、年龄、 学历、职称等
部门信息:部门 名称、部门负责 人、联系电话等
岗位信息:岗位 名称、岗位职责、 任职条件等
工资信息:基本 工资、绩效工资、 津贴等
系统设计
章节副标题
系统架构设计
架构概述:描述 系统的整体架构 和主要组件
数据库设计:介 绍数据库表结构、 关系等
系统开发的目标 和意义
系统涉及的主要 业务和功能
系统与其他系统 的关系
系统目标
实现教职工档案 的录入、存储和 检索功能
提供方便快捷的 档案查询服务
保证数据的安全 性和保密性
提高档案管理工 作的效率和规范 性
系统功能
教职工信息录入 教职工信息查询 教职工信息修改 教职工信息删除
系统需求分析
章节副标题
数据安全性:设 置用户权限和数 据加密入框,以 及登录和取消
按钮
主界面:显示 教职工的姓名、 性别、年龄、 学历、职称等

javaweb课程设计报告

javaweb课程设计报告

javaweb课程设计报告1.简介:本文主要是对于Java Web课程设计的报告,这是一项对于Java Web开发能力的考核,也是对于学生们在本门课程的学习成果的一次检验。

2.课程设计目标:本次课程设计是为了让学生们掌握Java Web开发的技术和能力,主要目标是:(1) 实现一个完整的Java Web应用程序,包括前端界面和后端的数据处理;(2) 学生们需要有自己的想象力和创造力,完成课程设计要求的同时,也应该将自己的创意和设计融入其中;(3) 学生们应该掌握Java Web相关技术的基本知识,比如Servlet、JSP、JDBC、Tomcat等;(4) 培养学生的学习能力和项目管理能力。

3.系统设计:(1)功能模块设计:根据需求设计功能模块,包括用户管理、订单管理、商品管理等。

(2)数据库设计:设计合理的数据库结构,包括数据表的设计、索引的设计等。

(3)页面设计:根据需求设计好看的、易用的页面,包括前端和后端页面。

(4)逻辑设计:编写合理的逻辑代码,包括业务逻辑和程序逻辑。

(5)安全设计:设计安全的程序架构,包括输入校验、权限管理等。

4.技术选型:(1)前端框架选择:Bootstrap、jQuery等。

(2)后端框架选择:Spring、Struts等。

(3)数据库选择:MySQL等。

(4)服务器选择:Tomcat等。

5.实现:(1)代码编写:根据设计,开始编写代码。

(2)功能集成:将各个模块整合到一起,形成一个完整的系统。

(3)测试调试:进行单元测试、集成测试、系统测试和压力测试,保证系统的正常运行。

6.课程设计总结:通过本次课程设计,学生们不仅能够掌握Java Web相关技术,还能够提高自己的编程能力和项目管理能力,同时也能够在未来的工作中为企业提供更好的服务和产品,在实际项目中得到更多的成功和荣誉。

7.难点和解决方案:在实现Java Web系统的过程中,会遇到一些技术难点,如并发处理、数据安全、性能优化等等。

java课程设计报告

java课程设计报告

java课程设计报告随着Java言的不断发展,越来越多的编程人员开始使用 Java开发应用程序,这就催生出了一种新的课程 Java程设计。

本文旨在通过总结 Java程设计的过程及其相关知识,以便于编程人员以及研究者对 Java程设计有一个更深入的了解。

首先,要完成 Java程设计,需要了解 Java语言特性和编程工具。

这里不仅要掌握 Java言本身的知识,还要熟悉 Java架和测试框架,这样才能开发出能够完成各种任务的应用程序。

此外,学习Java程设计的人还需要具备一定的网络知识,这样可以更好地了解Java程设计的用途,以及 Java发的环境,否则,将很难完成 Java程设计。

其次,要开始 Java程设计,设计人员要先明确设计内容,比如要设计的应用程序的功能、界面要求等,还要考虑安全性、可维护性等方面,以确保设计出来的程序在实际应用中能够如预期般完成任务。

之后,设计人员就可以根据设计内容,编写 Java序,实现功能。

此时,设计人员要根据需求分析,合理安排代码结构,并确定需要用到的类库和技术;同时,实现功能时也要注意代码质量,要遵守 Java 程的规范,要避免出现内存泄漏等问题。

最后,在完成 Java程设计之后,设计人员要进行测试,确保程序能够完成预期任务。

这里可以使用基于 Junit(Java元测试框架)的测试框架,测试各个类的接口和输出内容,以确保程序功能正常,做到稳定可靠。

总的来说,要完成 Java程设计,不仅要有良好的 Java言和编程工具的基础知识,还要了解 Java发的环境,还要具备一定的网络知识,最后要仔细的进行测试,确保设计出来的程序稳定可靠,才能完成 Java程设计。

总之,很明显,Java程设计并不容易,但所能学到的知识也丰富多样,对于以后的研究和工作也有很大的帮助,因此,建议编程人员考虑学习 Java程设计,来拓展自己的知识面和应用能力。

教师管理系统Java课程设计

教师管理系统Java课程设计

教师管理系统Java课程设计一、教学目标本课程旨在通过Java编程语言的学习,让学生掌握教师管理系统的开发流程,培养他们的编程思维和实际操作能力。

具体的教学目标如下:知识目标:使学生了解Java语言的基本语法、数据结构和常用类库;理解面向对象编程的基本概念和方法。

技能目标:培养学生能够运用Java语言独立开发小型应用程序的能力;使学生掌握教师管理系统的需求分析、设计、编码和测试过程。

情感态度价值观目标:培养学生对计算机科学的兴趣和热情,提高他们解决实际问题的能力,培养团队协作和自主学习能力。

二、教学内容本课程的教学内容主要包括Java基本语法、数据结构、面向对象编程、教师管理系统的需求分析和设计。

具体安排如下:1.Java基本语法:介绍Java语言的基本数据类型、运算符、控制结构等。

2.数据结构:讲解数组、链表、栈、队列、树等基本数据结构。

3.面向对象编程:介绍类、对象、继承、多态、封装等基本概念,并讲解如何运用这些概念进行程序设计。

4.教师管理系统的需求分析和设计:通过案例学习,使学生掌握需求分析的方法,并能够根据需求设计相应的系统功能。

三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。

1.讲授法:用于讲解Java基本语法、数据结构和面向对象编程等理论知识。

2.案例分析法:通过分析实际案例,使学生掌握教师管理系统的需求分析和设计方法。

3.实验法:让学生动手编写代码,培养实际操作能力和团队协作能力。

四、教学资源本课程所需的教学资源包括教材、多媒体资料和实验设备。

1.教材:选用《Java编程思想》作为主要教材,辅助以相关参考书籍。

2.多媒体资料:提供在线教学视频、PPT课件等,以便学生课后复习和巩固知识。

3.实验设备:配置相应的计算机和网络环境,让学生能够进行实际编程练习。

五、教学评估本课程的教学评估将采用多元化的评估方式,以全面、客观、公正地评价学生的学习成果。

毕业设计(论文)开题报告-基于java的教务管理系统[管理资料]

毕业设计(论文)开题报告-基于java的教务管理系统[管理资料]

湖南人文科技学院本科生毕业设计档案材料
题目:基于java的教务管理系统学生姓名:学号
系部:通信与控制工程系
专业年级:0 8级通信工程
指导教师:
职称:副教授
湖南人文科技学院教务处制
题目来源:教师科研课题、生产实际题、社会现实题、假想题等
指导教师(签名):
年月日
注:、良好、中等、及格、不及格五个等级,实评总分90~100为优秀,80~89为良好,70~79为中等,60~69为及格,60分以下为不及格;。

注:、良好、中等、及格、不及格五个等级,实评总分90~100为优秀,80~89为良好,70~79为中等,60~69为及格,60分以下为不及格;。

组评定成绩综合评定。

java课程设计报告(完整版)

java课程设计报告(完整版)

目录1、摘要2、概要设计3、详细设计4、测试分析5、总结6、参考文献【前言】Java不依赖平台的特点使得它受到广泛的关注,Java已成为网络时代最重要的语言之一。

Java语言不仅是一门正在被广泛使用的编程语言,而且已成为软件设计开发者应当掌握的一门基础语言。

目前,很多新的技术领域都涉及Java语言,国内外许多大学已将Java语言列入了本科教学计划,掌握Java已经成为共识。

本次课程设计就是利用java语言来编写简单的计算器,能进行加、减、乘、除四则运算,下面给出了该设计的理论分析和具体步骤。

一、摘要本计算器可以进行简单的四则运算(加、减、乘、除),但仅限于十进制下。

“Backspace”按钮表示退格,“CE”按钮表示清除当前文本框内的数据,“C”按钮表示清除文本框内数据,同时var、answer清零。

该程序可在JCreator环境下直接运行。

二、概要设计1、自定义说明(1)类名:Calculator作用:主类继承的父类:JFrame类实现的接口:ActionListener类public class Calculator extends JFrame implements ActionListener{private static String[] btnTexts = {"0","1","2","3","4","5","6","7","8","9","+","-","*","/",".","+/-"}; //定义数组bstTexts来存放计算器上的各个按钮Button button[] = new Button[16];Button BkButton,CeButton,CButton,EqButton;boolean clickable; //控制当前能否按键double vard, answerd; //用来保存double型数据的中间值(vard)和最后结果(answerd)short key = -1, prekey = -1; //key用来保存当前进行何种运算,prekey用来保存前次进行何种运算DecimalFormat df; //设置数据输出精度private JTextField displayField = new JTextField(" "); //计算结果显示区public Calculator(){………}public void actionPerformed(ActionEvent event){………}}(2)方法名:Calculator作用:设置窗体布局public Calculator(){//Frame frame = new Frame("Calculator");super("Calculator"); //显示主窗口标题“Calculator”df = new DecimalFormat("0.00000000"); //设置数据输出精度(对于double型值)BkButton = new Button("Backspace");BkButton.setForeground(Color.red);CeButton = new Button("CE");tForeground(Color.red);CButton = new Button("C");CButton.setForeground(Color.red);EqButton = new Button("=");EqButton.setForeground(Color.red); //将“Backspace”、“CE”、”C”、“=”显示为红色BkButton.addActionListener(this);nListener(this);CButton.addActionListener(this);EqButton.addActionListener(this);displayField.setHorizontalAlignment(JTextField.RIGHT); //将计算结果显示在displayField的右面JPanel p1 = new JPanel(new FlowLayout()); //以FlowLayout布局p1 p1.add(BkButton);p1.add(CeButton);p1.add(CButton);p1.add(EqButton); //设置四个按钮:"Backspace","CE","C","="JPanel p2 = new JPanel(new GridLayout(2,1)); //以GridLayout布局p2 p2.add(displayField);p2.add(p1); //加入显示结果的JTextField和p1JPanel p3 = new JPanel(new GridLayout(4,4)); //以GridLayout布局p3 for(int i = 0;i < btnTexts.length;i++){button[i] = new Button(btnTexts[i]); //将数组btnTexts[]的值赋给数组button[] button[i].setForeground(Color.blue); //组件button的前景色显示蓝色p3.add(button[i]);button[i].addActionListener(this);}Container cp = this.getContentPane(); //采用默认的BorderLayout布局cpcp.add(p2,BorderLayout.NORTH);R);}(3)方法名:actionPerformed作用:设置各个按钮的行为public void actionPerformed(ActionEvent event){boolean sign = false; //判断是否是double型数参与运算,是为true,不是为falseObject temp = event.getSource();try{for (int i = 0; i <= 9; i++) //如果按下数据按钮,将按下的按钮代表的数据插入的当前文本框字符串之后displayField.setText(displayField.getText() + Integer.toString(i));//按下'.'按钮时,判断当前文本框内字符串中含不含'.',如果已含,则不允许再插入'.'if (temp == button[14] && clickable == true){……….}if ( (temp == button[10] || temp == button[11] || temp == button[12] || temp == button[13]) && clickable == true){//'+'操作if (temp == button[10]){…………}//'-'操作if (temp == button[11]){…………}//'*'操作if (temp == button[12]){…………}//'/'操作if (temp == button[13]){…………}//'='操作if (temp == EqButton && clickable == true){…………}//按下'+/-'按钮时处理{…………}//按下'Backspace'键,利用循环将当前字符串中的最后一个字母删除if (temp == BkButton && clickable == true){…………}//按下'CE'按钮,将当前文本框内数据清除if (temp == CeButton){………}//按下'C'按钮,文本框内数据清除,同时var,answer清0if (temp == CButton){………}}//输入中如果有操作非法,比如按下两次'+',捕获异常catch (Exception e){displayField.setText("操作非法");clickable = false;}2、界面设计下图为该程序运行时的界面截图:三、详细设计以下为该程序的主要代码:import javax.swing.*;import java.awt.*;import javax.swing.event.*;import java.awt.event.*;imalFormat;public class Calculator extends JFrame implements ActionListener{private static String[] btnTexts ={"0","1","2","3","4","5","6","7","8","9","+","-","*","/",".","+/-"};Button button[] = new Button[16];Button BkButton,CeButton,CButton,EqButton;boolean clickable; //控制当前能否按键double vard, answerd; //用来保存double型数据的中间值(vard)和最后结果(answerd)short key = -1, prekey = -1; //key用来保存当前进行何种运算,prekey用来保存前次进行何种运算DecimalFormat df; //设置数据输出精度private JTextField displayField = new JTextField(" ");//计算结果显示区public Calculator(){super("Calculator"); //显示主窗口标题“Calculator”df = new DecimalFormat("0.00000000"); //设置数据输出精度(对于double型值)BkButton = new Button("Backspace");BkButton.setForeground(Color.red);CeButton = new Button("CE");CeButton.setForeground(Color.red);CButton = new Button("C");CButton.setForeground(Color.red);EqButton = new Button("=");EqButton.setForeground(Color.red); //将“Backspace”、“CE”、”C”、“=”显示为红色BkButton.addActionListener(this);CeButton.addActionListener(this);CButton.addActionListener(this);EqButton.addActionListener(this);displayField.setHorizontalAlignment(JTextField.RIGHT); //将计算结果显示在displayField的右面JPanel p1 = new JPanel(new FlowLayout()); //以FlowLayout布局p1 p1.add(BkButton);p1.add(CeButton);p1.add(CButton);p1.add(EqButton); //设置三个按钮:"Backspace","CE","C","="JPanel p2 = new JPanel(new GridLayout(2,1)); //以GridLayout布局p2 p2.add(displayField);p2.add(p1); //加入显示结果的JTextField和p1JPanel p3 = new JPanel(new GridLayout(4,4)); //以GridLayout布局p3 for(int i = 0;i < btnTexts.length;i++){button[i] = new Button(btnTexts[i]); //将数组btnTexts[]的值赋给数组button[] button[i].setForeground(Color.blue); //组件button的前景色示蓝色p3.add(button[i]);button[i].addActionListener(this);}Container cp = this.getContentPane(); //采用默认的BorderLayout布局cpcp.add(p2,BorderLayout.NORTH);cp.add(p3,BorderLayout.CENTER);}//设置各个按钮行为public void actionPerformed(ActionEvent event){boolean sign = false; //判断是否是double型数参与运算,是为true,不是为falseObject temp = event.getSource();try{for (int i = 0; i <= 9; i++) //如果按下数据按钮,将按下的按钮代表的数据插入的当前文本框字符串之后if (temp == button[i] && clickable == true)displayField.setText(displayField.getText() + Integer.toString(i));//按下'.'按钮时,判断当前文本框内字符串中含不含'.',如果已含,则不允许再插入'.'if (temp == button[14] && clickable == true){boolean isDot = false;if (displayField.getText().length() == 0)isDot = true;for (int i = 0; i < displayField.getText().length(); i++)if ('.' == displayField.getText().charAt(i)){isDot = true;break;}if (isDot == false)displayField.setText(displayField.getText() + ".");}if ( (temp == button[10] || temp == button[11] || temp == button[12] || temp == button[13]) && clickable == true){//'+'操作if (temp == button[10]){switch (prekey){case 0:answerd += Double.parseDouble(displayField.getText());break;case 1:answerd -= Double.parseDouble(displayField.getText());break;case 2:answerd *= Double.parseDouble(displayField.getText());break;case 3:if (Double.parseDouble(displayField.getText()) == 0){displayField.setText("除数不能为零");clickable = false;}elseanswerd /= Double.parseDouble(displayField.getText());break;default:le(displayField.getText());}displayField.setText("");prekey = key = 0;}//'-'操作if (temp == button[11]){switch (prekey){case 0:answerd += Double.parseDouble(displayField.getText());break;case 1:answerd -= Double.parseDouble(displayField.getText());break;case 2:answerd *= Double.parseDouble(displayField.getText());break;case 3:if (Double.parseDouble(displayField.getText()) == 0){displayField.setText("除数不能为零");clickable = false;}elseanswerd /= Double.parseDouble(displayField.getText());break;default:answerd = Double.parseDouble(displayField.getText());}displayField.setText("");prekey = key = 1;}//'*'操作if (temp == button[12]){switch (prekey){case 0:answerd += Double.parseDouble(displayField.getText());break;case 1:answerd -= Double.parseDouble(displayField.getText());break;case 2:answerd *= Double.parseDouble(displayField.getText());break;case 3:if (Double.parseDouble(displayField.getText()) == 0){displayField.setText("除数不能为零");clickable = false;}elseanswerd /= Double.parseDouble(displayField.getText());break;default:answerd = Double.parseDouble(displayField.getText());}displayField.setText("");prekey = key = 2;}//'/'操作if (temp == button[13]){switch (prekey){case 0:answerd += Double.parseDouble(displayField.getText());break;case 1:answerd -= Double.parseDouble(displayField.getText());break;case 2:answerd *= Double.parseDouble(displayField.getText());break;case 3:if (Double.parseDouble(displayField.getText()) == 0){displayField.setText("除数不能为零");clickable = false;}elseanswerd /= Double.parseDouble(displayField.getText());break;default:answerd = Double.parseDouble(displayField.getText());}displayField.setText("");prekey = key = 3;}}//'='操作if (temp == EqButton && clickable == true){//如果连续按'=',则进行连续运算if (prekey == 5){if (key == 0){answerd += vard;displayField.setText(df.format(answerd));}if (key == 1){answerd -= vard;displayField.setText(df.format(answerd));}if (key == 2){answerd *= vard;displayField.setText(df.format(answerd));}if (key == 3){if (Double.parseDouble(displayField.getText()) == 0){displayField.setText("除数不能为零");clickable = false;}else{answerd /= vard;displayField.setText(df.format(answerd));}}}else{vard = Double.parseDouble(displayField.getText());if (key == 0){prekey = -1;answerd += Double.parseDouble(displayField.getText());displayField.setText(df.format(answerd));}if (key == 1){prekey = -1;answerd -= Double.parseDouble(displayField.getText());displayField.setText(df.format(answerd));}if (key == 2){prekey = -1;answerd *= Double.parseDouble(displayField.getText());displayField.setText(df.format(answerd));}if (key == 3){prekey = -1;if (Double.parseDouble(displayField.getText()) == 0){displayField.setText("除数不能为零");clickable = false;}else{answerd /= Double.parseDouble(displayField.getText());displayField.setText(df.format(answerd));}}prekey = 5;}//按下'+/-'按钮时处理if (temp == button[15] && clickable == true){boolean isNumber = true;String s = displayField.getText();for (int i = 0; i < s.length(); i++)if (! (s.charAt(i) >= '0' && s.charAt(i) <= '9' || s.charAt(i) == '.' || s.charAt(i) == '-')){isNumber = false;break;}if (isNumber == true){//如果当前字符串首字母有'-'号,代表现在是个负数,再按下时,则将首符号去掉if (s.charAt(0) == '-'){displayField.setText("");for (int i = 1; i < s.length(); i++){char a = s.charAt(i);displayField.setText(displayField.getText() + a);}}//如果当前字符串第一个字符不是符号,则添加一个符号在首字母处elsedisplayField.setText('-' + s);}}//按下'Backspace'键,利用循环将当前字符串中的最后一个字母删除if (temp == BkButton && clickable == true)String s = displayField.getText();displayField.setText("");for (int i = 0; i < s.length() - 1; i++){char a = s.charAt(i);displayField.setText(displayField.getText() + a);}}//按下'CE'按钮,将当前文本框内数据清除if (temp == CeButton){displayField.setText("");clickable = true;}//按下'C'按钮,文本框内数据清除,同时var,answer清0if (temp == CButton){vard = answerd = 0;displayField.setText("");clickable = true;}}//输入中如果有操作非法,比如按下两次'+',捕获异常catch (Exception e){displayField.setText("操作非法");clickable = false;}}public static void main(String args[]){Calculator calculator = new Calculator();calculator.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);calculator.setSize(300,200);calculator.setVisible(true);}}四、测试分析(1)程序运行情况该程序正常的响应按钮事件,能进行简单的加、减、乘、除四则运算,在输入之前须先进行清零处理,然后再输入数值进行运算。

java课程设计实验报告

java课程设计实验报告

java课程设计实验报告Java课程设计实验报告。

一、实验目的。

本次实验旨在通过设计一个简单的Java程序,加深对Java语言的理解和应用,同时锻炼学生的编程能力和解决问题的能力。

二、实验内容。

本次实验要求设计一个简单的学生成绩管理系统,实现对学生成绩的录入、查询、修改和删除等功能。

具体要求如下:1. 设计一个学生类,包括学生的基本信息(学号、姓名、性别等)和成绩信息(语文、数学、英语等科目成绩)。

2. 实现学生成绩的录入功能,可以一次性录入多个学生的成绩信息。

3. 实现学生成绩的查询功能,可以根据学号或姓名查询学生的成绩信息。

4. 实现学生成绩的修改功能,可以修改指定学生的成绩信息。

5. 实现学生成绩的删除功能,可以删除指定学生的成绩信息。

三、实验设计。

在本次实验中,我首先设计了一个学生类,包括学号、姓名、性别和成绩等属性,并提供了相应的构造方法和get、set方法。

然后,我设计了一个学生成绩管理系统的主类,其中包括录入、查询、修改和删除等功能的实现。

在录入功能中,我使用Scanner类实现了从控制台输入学生信息的功能,并将学生信息保存到一个ArrayList中。

在查询功能中,我通过学号或姓名遍历ArrayList,找到相应的学生信息并输出。

在修改功能中,我同样通过遍历ArrayList找到指定学生信息,并提供修改选项,用户可以选择要修改的成绩信息进行修改。

在删除功能中,我也是通过遍历ArrayList找到指定学生信息,并进行删除操作。

四、实验结果。

经过一系列的调试和测试,我成功实现了学生成绩管理系统的设计要求。

用户可以通过简单的命令行界面,实现学生成绩的录入、查询、修改和删除等功能。

系统运行稳定,操作简单,符合设计要求。

五、实验总结。

通过本次实验,我对Java语言的面向对象编程有了更深入的理解,掌握了ArrayList的使用方法,提高了编程能力和问题解决能力。

同时,通过设计一个实用的学生成绩管理系统,我也加深了对Java语言的应用和实践,为以后的学习和工作打下了坚实的基础。

教职工管理系统课程设计

教职工管理系统课程设计

教职工管理系统课程设计一、课程目标知识目标:1. 学生能理解教职工管理系统的基本概念,掌握其功能模块和工作原理。

2. 学生能掌握数据库管理的基本操作,如增加、删除、修改和查询教职工信息。

3. 学生能了解系统开发的基本流程,掌握与教职工管理系统相关的编程语言和开发工具。

技能目标:1. 学生能运用所学知识,设计并实现一个简单的教职工管理系统。

2. 学生能运用数据库管理技能,对教职工信息进行有效管理。

3. 学生能通过团队协作,解决系统开发过程中遇到的问题,提高沟通与协作能力。

情感态度价值观目标:1. 学生能培养对信息技术的兴趣和爱好,增强学习动力。

2. 学生能认识到信息技术在管理领域的应用价值,提高社会责任感。

3. 学生能在团队协作中学会尊重他人、倾听意见,培养良好的团队合作精神。

课程性质分析:本课程为信息技术课程,旨在让学生掌握教职工管理系统的设计与实现方法,培养其信息技术应用能力和团队协作能力。

学生特点分析:学生处于高年级阶段,具有一定的信息技术基础和编程能力,具备自主学习与合作探究的能力。

教学要求:1. 结合教材内容,注重实践操作,提高学生的动手能力。

2. 强化团队合作,培养学生的沟通与协作能力。

3. 关注学生个体差异,因材施教,确保每个学生都能达到课程目标。

二、教学内容1. 教职工管理系统概述- 了解系统的基本概念、功能模块和工作原理- 分析系统在实际应用中的优势与局限2. 数据库管理基础- 学习数据库的基本概念、数据模型和数据表设计- 掌握SQL语言进行数据增加、删除、修改和查询操作3. 系统开发流程与工具- 了解系统开发的基本流程,包括需求分析、设计、编码、测试等- 学习相关编程语言(如Java、Python等)和开发工具(如Eclipse、Visual Studio等)4. 教职工管理系统设计与实现- 分析系统需求,设计系统功能模块和数据库结构- 编写代码实现系统功能,如用户登录、信息录入、查询、修改等5. 系统测试与优化- 学习系统测试的方法和技巧,确保系统功能的正确性和稳定性- 分析系统性能,提出优化措施,提高系统运行效率6. 团队协作与沟通- 培养团队协作能力,明确分工与责任- 学习有效沟通的技巧,提高项目推进效率教学内容安排与进度:第1-2周:教职工管理系统概述、数据库管理基础第3-4周:系统开发流程与工具、教职工管理系统设计与实现第5-6周:系统测试与优化、团队协作与沟通教材章节关联:本教学内容与教材中关于数据库应用、系统设计与实现、团队协作等相关章节紧密关联,确保学生能够系统地掌握教职工管理系统的开发与应用。

java信息管理系统课程设计

java信息管理系统课程设计

java信息管理系统课程设计一、课程目标知识目标:1. 理解Java语言在信息管理系统中的应用,掌握Java基础语法和数据结构;2. 学会使用Java编写简单的信息管理系统功能,如用户登录、数据增删改查等;3. 了解数据库连接和SQL语句在Java中的应用,能够实现简单的数据库操作。

技能目标:1. 能够运用所学知识,设计并实现一个简单的信息管理系统;2. 掌握Java编程规范,养成良好的编程习惯,提高代码质量;3. 学会使用调试工具和技巧,解决编程过程中遇到的问题。

情感态度价值观目标:1. 培养学生对信息管理系统的兴趣,激发学习主动性和积极性;2. 培养学生的团队协作能力,学会与他人共同解决问题;3. 增强学生的自信心,让他们认识到自己在编程方面的潜力。

分析课程性质、学生特点和教学要求:1. 课程性质:本课程为实践性较强的课程,旨在让学生通过实际操作,掌握Java语言在信息管理系统中的应用;2. 学生特点:学生具备一定的Java基础,对编程有一定兴趣,但实践经验和团队协作能力有待提高;3. 教学要求:注重理论与实践相结合,充分调动学生的积极性,培养学生的实际操作能力和团队协作能力。

1. 独立设计并实现一个简单的信息管理系统;2. 掌握Java编程规范,编写高质量的代码;3. 学会与他人合作,共同解决编程过程中遇到的问题;4. 提高自身在编程方面的自信心和兴趣。

二、教学内容1. Java基础语法回顾:变量、数据类型、运算符、控制流程(条件语句、循环语句)等;2. 面向对象编程:类与对象、封装、继承、多态等;3. 常用数据结构:数组、集合(List、Set、Map)等;4. 异常处理:try-catch-finally结构,自定义异常等;5. 文件操作:文件的读取与写入,文件的随机访问等;6. 数据库连接:JDBC概述,数据库连接与操作,SQL语句执行等;7. 信息管理系统功能实现:用户登录、数据增删改查等;8. 项目实践:分组进行项目设计,实现一个简单的信息管理系统。

JAVA-课程设计报告

JAVA-课程设计报告

《JA V A程序设计》课程设计报告设计题目:学生信息管理系统学院名称:信息工程学院专业班级:13计本1姓名:学号:目录一需求分析。

3二概要设计。

3三详细设计。

33.1 数据库设计。

33.2 模块及窗体设计。

33.2.1 数据库模块设计。

33.2.2 用户登录识别模块。

53.2.3用户信息管理模块。

6(1)密码修改。

6(2)用户信息添加和删除。

83.2.4 学生息管理模块。

10(1)添加信息。

10(2)信息查看。

11(3)信息修改。

12(4)删除信息。

143.2.5 系统管理模块。

153.2.6 主窗体菜单设计。

15四软件测试。

15五总结。

15参考资料:.......................................................17一需求分析本系统的主要目的就是实现学生信息管理,使学生信息管理工作更加容易,从而提高工作效率,降低管理成本.系统中需要对拥护身份进行管理,采取登陆进入系统的形式.二概要设计/************************************************************************概要设计阶段主要是粗略描述整个软件的框架,并从业务的角度描述软件的模块、工作流程等。

项目的成功取决于设计的好坏,而概要设计则是整个设计的关键部分。

概要设计的主要任务是将用户的需求划分为不同的功能,然后将这些功能细分成模块,并给模块一些规则约束,以达到各个模块之间可以相互交流的目的。

概要设计关乎到系统的整体架构,因此想做好一个概要设计,不仅仅要熟悉用户的业务流程,还要具备相当丰富的设计经验。

2.1 概要设计的原则概要设计是根据系统分析的需求和工作环境的情况对整个软件的总体结构进行大致的设计。

概要设计要坚持以下几个原则。

(1)细分原则:软件系统都是由很多不同的模块组成,当设计一套软件时,要先将所有的功能分解。

解决复杂问题的方法是将其分解成几个小问题,一个个来解决。

《java课程设计》总结报告银行账户管理系统、校园导航系统

《java课程设计》总结报告银行账户管理系统、校园导航系统

《java课程设计》总结报告银行账户管理系统、校园导航系统二零二二年一月二十日《java课程设计》总结报告一、课程设计目的与意义1. 根据课堂讲授内容,学生做相应的自主练习,消化课堂所讲解的内容。

2.通过调试典型例题或习题积累调试程序的经验。

3.通过完成辅导教材中的编程题,逐渐培养学生的编程能力,用计算机解决实际问题的能力。

二、课程设计内容与环境(一)课程设计内容1.校园导航系统:紧扣课程设计项目题目,基于图的数据结构技术的多种算法进行系统设计与实现,要求具备查找所有景点,最小路径,查找景点功能、,以满足项目需要。

2.账户管理事务系统/RSS阅读器/OJ评测系统原型:紧扣课程设计项目题目,基于GUI技术的框架组件进行系统设计与实现,要求具备银行账户功能、日志非功能要求,以满足项目需要。

(二)课程设计环境描述相关环境及要素。

【如:一台PC机,Windows10操作系统,idea2017,JDK8】三、项目实施过程四、项目分工与完成情况五、课程设计体会与收获(一)个人体会与收获本次实验加深了我对GUI中各种组建的用法,如:获取用户信息的窗口,各种按钮监听器,文本域的使用与滑动的设置。

IO流是Java程序设计的重点章节,而本次实验中大量使用的IO流的输入与输出对数据进行处理,多次调用单个用户的数据使用ObjectInputStream更加方便,但在使用过程中遇到了很多问题,如当使用ObjectInputStream重复写入数据时会报错,这是由于文件的写入过程中会写入一个文件头,重复写入时会重复写入文件头,可以使用重写该类的writeStreamHeader()方法进行解决。

陈恩召(2010119016):本次报告让我对java的io,gui和数据结构的图有了更深的认识,看书不是重点,重点是多实践有了良好的开端还要养成良好的学习习惯,平时不单单是多看书本知识,自己在看书的时候还要把书上的例子亲手敲到电脑上去实践,千万不要图省事,就照抄、复制,只有实践才知道自己是否真的会写代码。

java课程设计报告

java课程设计报告

java课程设计报告
最近,随着Java技术的快速发展,Java课程设计在计算机领域中的重要性正在越来越明显。

在大学里,Java课程设计任务也日益复杂。

本文以Java课程设计报告为例,通过简要介绍后,分析java 课程设计的实施过程和报告内容,以及注意事项及其优势等内容,全面介绍Java课程设计报告的写作。

首先,Java课程设计报告是对学习者在Java课程设计任务过程中,实际实施情况的汇总,总结和反思。

它是学习者实际实施和学习的结果,以及对于任务的分析和反思的总结报告,是java课程设计实施情况的重要体现。

其次,Java课程设计报告的写作过程可以分为以下几个部分:
1、实施阶段:该阶段是提出问题、调查问题、分析问题和设计方案,实施运行方案,及时发现问题,并及时进行调整预测等;
2、报告内容:该部分内容包括任务概述、实施过程、系统分析、系统设计详情、开发技术等。

3、注意事项:写作应不断修改和审阅,尤其是关于表达、措辞的修改,使其文字更加通顺流畅;文中应提供加以证明的有效数据,同时,文章的架构要安排得当,使文章的结构清晰。

最后,Java课程设计报告的优势是:一是针对特定领域的问题,可以解决学习者所遇到的技术问题;二是通过Java课程设计报告,可以反映学习者实际实施任务的过程;三是可以提高大学生技术实践能力,更多地体会计算机技术的有效应用。

总之,Java课程设计报告是一种重要的计算机课程设计任务,它不仅有助于更好地体验计算机技术的实际应用,而且能够帮助学生掌握编程技术,培养实践能力。

因此,精心准备设计的Java课程设计报告,仍是一项有益的学习任务。

Javaweb课程设计管理系统

Javaweb课程设计管理系统

Javaweb课程设计管理系统一、教学目标本课程旨在让学生掌握Javaweb课程设计管理系统的基本原理和技能,能够独立完成Javaweb应用的开发和部署。

通过本课程的学习,学生将掌握Javaweb的基本概念、技术原理和实际应用,培养学生的实际动手能力和解决问题的能力。

具体来说,知识目标包括:1.掌握Javaweb的基本概念和技术原理。

2.熟悉Javaweb开发工具和环境。

3.理解Javaweb应用的运行机制。

技能目标包括:1.能够独立配置和部署Javaweb开发环境。

2.能够使用Javaweb技术开发简单的应用系统。

3.能够分析和解决Javaweb开发过程中的问题。

情感态度价值观目标包括:1.培养学生的团队合作意识和沟通能力。

2.培养学生的问题解决能力和创新精神。

3.培养学生的自主学习和持续学习的意识。

二、教学内容本课程的教学内容主要包括Javaweb的基本概念、技术原理和实际应用。

具体安排如下:1.Javaweb基本概念:介绍Javaweb的定义、特点和应用场景。

2.Javaweb技术原理:讲解Javaweb技术的原理和运行机制,包括服务器端的处理流程、客户端的请求处理等。

3.Javaweb开发工具和环境:介绍常用的Javaweb开发工具和环境,如Eclipse、Tomcat等,并讲解如何配置和部署开发环境。

4.Javaweb应用开发:讲解如何使用Javaweb技术开发简单的应用系统,包括页面设计、业务逻辑处理和数据持久化等。

5.Javaweb应用部署:讲解如何将Javaweb应用部署到服务器上,并介绍常用的部署方式和配置方法。

三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。

1.讲授法:通过讲解和演示,向学生传授Javaweb的基本概念和技术原理。

2.讨论法:学生进行小组讨论,促进学生之间的交流和合作,培养学生的团队合作意识和沟通能力。

java课程设计设计实验报告

java课程设计设计实验报告

java课程设计设计实验报告一、教学目标本课程旨在通过Java编程语言的学习,让学生掌握Java编程的基本语法、流程控制、数据结构、面向对象编程等基本知识,培养学生运用Java语言解决实际问题的能力。

具体目标如下:1.知识目标:(1)理解Java编程语言的基本语法和编程规范;(2)掌握Java中的基本数据类型、运算符、表达式;(3)了解Java的流程控制语句,如if、for、while等;(4)熟悉Java数组、字符串、集合等数据结构的使用;(5)理解面向对象编程的基本概念,如类、对象、封装、继承、多态等;(6)掌握Java异常处理机制和文件操作。

2.技能目标:(1)能够使用Java编写简单的程序,实现基本的功能;(2)能够运用面向对象编程思想,设计并实现具有一定复杂度的程序;(3)具备阅读Java代码的能力,能够理解并修改他人编写的程序;(4)掌握使用Java开发工具,如Eclipse、IntelliJ IDEA等;(5)了解Java程序的调试和性能优化方法。

3.情感态度价值观目标:(1)培养学生对编程语言的兴趣,激发学生主动学习的动力;(2)培养学生团队合作精神,提高学生沟通协作能力;(3)培养学生面对挑战、解决问题的信心和勇气;(4)培养学生具有良好的代码规范和编程习惯。

二、教学内容本课程的教学内容主要包括Java编程语言的基本语法、流程控制、数据结构、面向对象编程等。

具体安排如下:1.第一章:Java入门,介绍Java编程语言的基本概念、环境搭建和基本语法;2.第二章:基本数据类型和运算符,学习Java中的整数、浮点数、字符、布尔等数据类型以及运算符;3.第三章:流程控制语句,学习if、for、while等流程控制语句的使用;4.第四章:数组和字符串,学习数组的声明、初始化和使用,字符串的创建、操作和转换;5.第五章:集合框架,学习List、Set、Map等集合接口及其实现类的使用;6.第六章:面向对象编程,学习类、对象、封装、继承、多态等概念及应用;7.第七章:异常处理和文件操作,学习Java异常处理机制和文件读写方法;8.第八章:Java编程实践,通过案例分析法和实验法,巩固所学知识,提高实际编程能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告学院、系:吉林大学珠海学院计算机科学与技术系专业名称:网络工程课程设计科目java程序课程设计学生姓名:**指导教师:***完成时间:2010年9月-11月教师管理系统一、设计任务与目标1)负责教师管理的主界面(用菜单方式打开下面的四个功能界面) 录入教师管理的界面修改教师管理的界面查询教师管理的界面删除教师管理的界面2)教师数据表的字段要求至少包含:工号、姓名、年龄、职称、所在系、教授的主要课程、联系电话、联系地址等字段。

要求字段类型设计合理、使用方便。

3)要求界面美观大方、功能实现完整此程序的设计,主要包括两个主体部分,一是界面部分,二是创建按钮并监听,实现录入,修改,查询,删除等功能。

以前在C++编写过类似的教师管理系统,其主要思路和本题保持一致,但代码不同。

需要准备的工作是创建主界面并完善各项分功能,连接数据库,实现录入和查看同步。

此次设计将会提高我对真正的JAVA程序设计的实战能力,对以前学过的知识融会贯通,并且深化和应用。

意在最终程序可以美观,实用,人性化,尽最大的能力扩充相关分模块。

二、方案设计与论证针对这道设计题的特点,首先做一个界面,界面中包括相关的分功能,录入,修改,查询,删除等,用surface做界面,分别设置各自的监听器,监听每一个button,并且各个分功能是对应各自的类。

这样的话,有利于用户提出不同修改的要求,此时只要单独修改个别类即可,提高程序的便捷化并且满足不同客户的需要。

在做这道题时遇到最大的障碍就是连接access数据库,因为以前没学过,所以这部分知识完全不会,必须考自学。

自己做这道题与其他设计人员最大的不同就在于将每个分功能,各自单独的写在一个类中,与把所有源代码都写在一个JAVA文件中的方法,更易于修改和编辑。

三、程序框图或流程图,程序清单与调用关系四、全部源程序清单package parent_window; //(package parent window包中的类)import java.awt.*;import javax.swing.*;import son_windows.*;public class surFace extends JFrame{JButton findSt,addSt,chanSt,delSt,exitSt;//查找,添加,删除,退出//构造函数public surFace(){Container c=this.getContentPane();c.setLayout(new GridLayout(2,1));JPanel lowerPanel=new JPanel();c.setFont(new Font("plain",Font.PLAIN,13));JLabel label=new JLabel("欢迎进入教师信息管理系统",SwingConstants.CENTER); label.setFont(new Font("BOLD",Font.BOLD,30));c.add(label);//创建按钮addSt=new JButton("录入");addSt.setToolTipText("添加教师信息");findSt=new JButton("查询");findSt.setToolTipText("查询信息");chanSt=new JButton("修改");chanSt.setToolTipText("修改成绩");delSt=new JButton("删除");delSt.setToolTipText("删除信息");exitSt=new JButton("退出");exitSt.setToolTipText("安全退出本系统");lowerPanel.add(findSt);lowerPanel.add(addSt);lowerPanel.add(chanSt);lowerPanel.add(delSt);lowerPanel.add(exitSt);c.add(lowerPanel);//注册监听器,新建独立监听器类查找:fin(),添加:ads(),删除:del(),退出本体统:ext()findSt.addActionListener(new fin());addSt.addActionListener(new ads());chanSt.addActionListener(new cc());//chanSt.addActionListener(new chan());delSt.addActionListener(new del());exitSt.addActionListener(new ext());}//main方法,实现主界面public static void main (String args[]){surFace su=new surFace();su.setSize(500,400);su.setTitle("欢迎使用教师管理系统!");su.setVisible(true);}}/**建立独立事件监听器类ads,处理surFace中“录入”点击事件*/package son_windows; //(package son_windows包中的类)(1)import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;public class ads extends JFrame implements ActionListener{JTextFieldnumberText,nameText,ageText,jobText,departmenText,classText,phoneText,addressTe xt;JButton addButton,clearButton,closeButton;Container c2;JDialog jd;JDialog jd2;public ads(){c2=this.getContentPane();c2.setLayout(new GridLayout(3,1));JPanel p1=new JPanel(new GridLayout(8,2));JPanel p2=new JPanel(new FlowLayout());//JLabel logoLabel=new JLabel("ii",SwingConstants.CENTER);logoLabel.setForeground(Color.black);logoLabel.setFont(new Font("TRUE",Font.TRUETYPE_FONT,20));logoLabel.setText("教师信息");c2.add(logoLabel);//创建JTextFieldnumberText=new JTextField();nameText=new JTextField();ageText=new JTextField();jobText=new JTextField();departmenText=new JTextField();classText=new JTextField();phoneText=new JTextField();addressText=new JTextField();//添加JTextFieldp1.add(new JLabel("工号",SwingConstants.CENTER));p1.add(numberText);p1.add(new JLabel("姓名",SwingConstants.CENTER));p1.add(nameText);p1.add(new JLabel("年龄",SwingConstants.CENTER));p1.add(ageText);p1.add(new JLabel("职称",SwingConstants.CENTER));p1.add(jobText);p1.add(new JLabel("所在系",SwingConstants.CENTER));p1.add(departmenText);p1.add(new JLabel("主授课程",SwingConstants.CENTER));p1.add(classText);p1.add(new JLabel("联系电话",SwingConstants.CENTER));p1.add(phoneText);p1.add(new JLabel("联系地址",SwingConstants.CENTER));p1.add(addressText);c2.add(p1) ;//addButton=new JButton("添加");clearButton=new JButton("清除");closeButton=new JButton("退出");p2.add(addButton);p2.add(clearButton);p2.add(closeButton);c2.add(p2);this.setSize(500,400);this.setTitle("添加教师信息");//为添加按钮添加监听器(使用匿名内部类处理点击事件)addButton.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){String number,name,age,job,departmen,clas,phone,address;Statement stm;String str;int j=0;number=numberText.getText();name=nameText.getText();age=ageText.getText();job=jobText.getText();departmen=departmenText.getText();clas=classText.getText();phone=phoneText.getText();address=addressText.getText();str="insert into data1 values('"+number+"','"+name+"','"+age+"','"+job+"','"+departmen+"','"+clas+"',' "+phone+"','"+address+"')";if(number.equals("")&&name.equals("")&&age.equals("")&&job.equals("")&&departme n.equals("")&&clas.equals("")&&phone.equals("")&&address.equals(""))j=2;elsetry {//加载驱动Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//连接数据源forStuConnectioncon=DriverManager.getConnection("jdbc:odbc:forStu","","");stm=con.createStatement();j=stm.executeUpdate(str);con.close();} catch (ClassNotFoundException e1) {}catch (SQLException e1) {}//jd=new JDialog();jd.setLayout(new GridLayout(2,1));jd.setSize(255,100);JPanel p1=new JPanel();JPanel p2=new JPanel();jd.add(p1);jd.add(p2);JLabel jl=new JLabel("添加成功!");JLabel jl2=new JLabel("不能添加空数据,请从新输入!");JLabel jl3=new JLabel("不能为相同数据,请从新输入!");JButton b=new JButton("确定");if(j==1){p1.add(jl);j=0;}elseif(j==2)p1.add(jl2);elsep1.add(jl3);p2.add(b);jd.setVisible(true);b.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){jd.setVisible(false);}});}});//添加“清除”键事件监听器clearButton.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){numberText.setText("");nameText.setText("");ageText.setText("");jobText.setText("");departmenText.setText("");classText.setText("");phoneText.setText("");addressText.setText("");}});//添加“关闭窗口”按钮事件监听器closeButton.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){ads.this.setVisible(false);ads.this.dispose();}});}//新建类ads的actionPerformed方法,实现surFace中的录入事件界面public void actionPerformed(ActionEvent e){ads a=new ads();a.setVisible(true);}}(2)import java.awt.*;import java.awt.event.*;import javax.swing.*;public class cc extends JFrame implements ActionListener{Container c1;public cc(){c1=this.getContentPane();c1.setLayout(new GridLayout(4,1));JPanel jp1=new JPanel();JPanel jp2=new JPanel();JPanel jp3=new JPanel();JLabel jl=new JLabel("请选择要修改那种信息",SwingConstants.CENTER);jl.setFont(new Font("BOLD",Font.BOLD,30));c1.add(jl);JButton b1=new JButton("联系电话");JButton b2=new JButton("联系地址");JButton b3=new JButton(" 取消 ");jp1.add(b1);jp2.add(b2);jp3.add(b3);c1.add(jp1);c1.add(jp2);c1.add(jp3);b1.addActionListener(new chan_tel());b2.addActionListener(new chan_adr());b3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){dispose();}});}public void actionPerformed(ActionEvent e){new cc();setSize(500,400);setVisible(true);}}(3)import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.*;public class chan_adr extends JFrame implements ActionListener{ Container c1;JPanel jp1,jp2,jp3,jp4;JLabel jl,jl2,jl3;JTextField jt1,jt2;JButton b1,b2,b3;JDialog jd;public chan_adr(){c1=this.getContentPane();c1.setLayout(new GridLayout(4,1));jl=new JLabel("修改教师联系地址");jl.setFont(new Font("BOLD",Font.BOLD,30));jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jp1.add(jl);c1.add(jp1);jl2=new JLabel("教师工号:");jl3=new JLabel("联系地址:");jt1=new JTextField(10);jt2=new JTextField(10);jp2.add(jl2);jp2.add(jt1);jp3.add(jl3);jp3.add(jt2);c1.add(jp2);c1.add(jp3);b1=new JButton("确定");b2=new JButton("清除");b3=new JButton("退出");jp4.add(b1);jp4.add(b2);jp4.add(b3);c1.add(jp4);b1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Connection con=null;Statement st;String str=null;int i=0;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con=DriverManager.getConnection("jdbc:odbc:forStu","","");str="update data1 set 联系地址='"+jt2.getText()+"' where 工号='"+jt1.getText()+"'";st=con.createStatement();i=st.executeUpdate(str);con.close();jd=new JDialog();jd.setVisible(true);jd.setLayout(new GridLayout(2,1));JPanel jpp1=new JPanel();JPanel jpp2=new JPanel();JLabel jll1=new JLabel("修改成功!");JLabel jll2=new JLabel("信息不存在,请核实后重试!");if(i==1)jpp1.add(jll1);elsejpp1.add(jll2);JButton jbb=new JButton("确定");jpp2.add(jbb);jd.add(jpp1);jd.add(jpp2);jd.setSize(255,100);jbb.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){jd.setVisible(false);}});}catch(ClassNotFoundException e1){}catch(SQLException e1){}}});b2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){jt1.setText("");jt2.setText("");}});b3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){setVisible(false);dispose();}});}public void actionPerformed(ActionEvent e){this.dispose();chan_adr c=new chan_adr();c.setSize(500,400);c.setVisible(true);}}(4)import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.*;public class chan_tel extends JFrame implements ActionListener{ Container c1;JPanel jp1,jp2,jp3,jp4;JLabel jl,jl2,jl3;JTextField jt1,jt2;JButton b1,b2,b3;JDialog jd;public chan_tel(){c1=this.getContentPane();c1.setLayout(new GridLayout(4,1));jl=new JLabel("修改教师联系电话");jl.setFont(new Font("BOLD",Font.BOLD,30));jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jp1.add(jl);c1.add(jp1);jl2=new JLabel("教师工号:");jl3=new JLabel("联系电话:");jt1=new JTextField(10);jt2=new JTextField(10);jp2.add(jl2);jp2.add(jt1);jp3.add(jl3);jp3.add(jt2);c1.add(jp2);c1.add(jp3);b1=new JButton("确定");b2=new JButton("清除");b3=new JButton("退出");jp4.add(b1);jp4.add(b2);jp4.add(b3);c1.add(jp4);b1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Connection con=null;Statement st;String str=null;int i=0;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con=DriverManager.getConnection("jdbc:odbc:forStu","","");str="update data1 set 联系电话='"+jt2.getText()+"' where 工号='"+jt1.getText()+"'";st=con.createStatement();i=st.executeUpdate(str);con.close();jd=new JDialog();jd.setVisible(true);jd.setLayout(new GridLayout(2,1));JPanel jpp1=new JPanel();JPanel jpp2=new JPanel();JLabel jll1=new JLabel("修改成功!");JLabel jll2=new JLabel("信息不存在,请核实后重试!");if(i==1)jpp1.add(jll1);elsejpp1.add(jll2);JButton jbb=new JButton("确定");jpp2.add(jbb);jd.add(jpp1);jd.add(jpp2);jd.setSize(255,100);jbb.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){jd.setVisible(false);}});}catch(ClassNotFoundException e1){}catch(SQLException e1){}}});b2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){jt1.setText("");jt2.setText("");}});b3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){setVisible(false);dispose();}});}public void actionPerformed(ActionEvent e){this.dispose();chan_tel c=new chan_tel();c.setSize(500,400);c.setVisible(true);}}(5)/** 建立独立事件监听器类del,处理surFace中“删除”点击事件*/import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.*;public class del extends JFrame implements ActionListener{JTextField text1,text2,text3;Container c3;JDialog jd;public del(){//删除信息GUI设计c3=this.getContentPane();c3.setLayout(new GridLayout(3,1));c3.setFont(new Font("true",Font.TRUETYPE_FONT,13));JPanel p1=new JPanel();JPanel p4=new JPanel();//JLabel label=new JLabel("删除教师信息",SwingConstants.CENTER);label.setFont(new Font("TRUE",Font.TRUETYPE_FONT,20));label.setForeground(Color.black);c3.add(label);//JLabel label1=new JLabel("请输入教师工号");text1=new JTextField(10);p1.add(label1);p1.add(text1);c3.add(p1);//JButton b1=new JButton("确定");JButton b2=new JButton("清除");JButton b3=new JButton("退出");p4.add(b1);p4.add(b2);p4.add(b3);c3.add(p4);//this.setSize(500,400);this.setTitle("删除教师信息");//内部匿名类实现“确定”按钮事件b1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Connection con;Statement st;String str1;String s1=text1.getText();int i=0;try{//加载驱动,连接数据源forStuClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");con=DriverManager.getConnection("jdbc:odbc:forStu","","");st=con.createStatement();str1="delete from data1 where 工号='"+s1+"'";i=st.executeUpdate(str1);con.close();//建立对话框,提示信息jd=new JDialog();jd.setLayout(new GridLayout(2,1));JPanel p1=new JPanel();JPanel p2=new JPanel();JLabel jl=new JLabel("您成功删除了"+i+"条记录");JLabel jl2=new JLabel("信息不存在,或已被删除,请重新输入!");JButton b=new JButton("确定");if(i!=1)p1.add(jl2);elsep1.add(jl);p2.add(b);jd.add(p1);jd.add(p2);b.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){jd.setVisible(false);}});jd.setSize(255,100);jd.setVisible(true);}catch(ClassNotFoundException e1){}catch (SQLException e1) {}}});//“清除”按钮b2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){text1.setText("");}});b3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){del.this.setVisible(false);del.this.dispose();}});}//del的方法,实现删除信息的界面public void actionPerformed(ActionEvent e){del d=new del();d.setVisible(true);}}(6)/** 建立独立事件监听器类ext,处理surFace中“退出”点击事件*/import java.awt.event.*;public class ext implements ActionListener{ public void actionPerformed(ActionEvent e){ System.exit(0);}}(7)/** 建立独立事件监听器类fin,处理surFace中“查询”点击事件*/import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.*;public class fin extends JFrame implements ActionListener{JTextField t1;JButton b1,b2,b3;static Container c1;JDialog jd;public fin(){c1=this.getContentPane();setBackground(new Color(215, 215, 215));c1.setLayout(new GridLayout(3,2));JPanel pp = new JPanel();JLabel label0=new JLabel("请您输入要查询的教师工号");label0.setForeground(Color.black);label0.setFont(new Font("TRUE",Font.TRUETYPE_FONT,20));pp.add(label0);c1.add(pp);JPanel p1 = new JPanel();t1=new JTextField(10);p1.add(new Label(""));p1.add(t1);c1.add(p1);JPanel p2 = new JPanel();b1 = new JButton("确定");b2 = new JButton("清空");b3 = new JButton("退出");p2.add(b1);p2.add(b2);p2.add(b3);c1.add(p2);this.setTitle("查找教师信息");this.setSize(500,400);this.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){}});//匿名内部类,实现本类中“确定”按钮b1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){Connection con=null;Statement sta;ResultSet res;int j=0;String temp2=null;String temp3=null;String temp4=null;String temp5=null;String temp6=null;String temp7=null;String temp8=null;try {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con=DriverManager.getConnection("jdbc:odbc:forStu","","");sta=con.createStatement();//从表basicdata中选取res=sta.executeQuery("select*from data1");while(res.next()){//判断提取信息if(res.getString("工号").equals(t1.getText())){j++;temp2=res.getString("姓名");temp3=res.getString("年龄");temp4=res.getString("职称");temp5=res.getString("所在系");temp6=res.getString("教授的主要课程");temp7=res.getString("联系电话");temp8=res.getString("联系地址");}}//建立对话框,提示完成jd=new JDialog();jd.setLayout(new GridLayout(2,1));JPanel p=new JPanel();JPanel p2=new JPanel();JLabel jl=new JLabel("您所查询的信息:"+" 姓名:"+temp2+" 年龄:"+temp3+" 职称:"+temp4+" 所在系:"+temp5+" 主授课程:"+temp6+" 联系电话:"+temp7+" 联系地址:"+temp8);JButton b4=new JButton("确定");JLabel jl2=new JLabel("对不起,没有该信息,请核实后重试!");jd.add(p);jd.add(p2);if(j==1){p.add(jl);}elsep.add(jl2);p2.add(b4);b4.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){jd.setVisible(false);}});jd.setSize(600,100);jd.setVisible(true);} catch (ClassNotFoundException e1) {e1.printStackTrace();}catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}finally{try {con.close();} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}}});//实现本类中“清空”按钮b2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){t1.setText("");}});b3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){fin.this.setVisible(false);fin.this.dispose();}});}//fin的actionPerformed方法,实现surFace中“查询”的界面public void actionPerformed(ActionEvent e){fin f=new fin();f.setVisible(true);}}四、序运行的测试与分析(1)教师信息管理系统主界面(2)查询功能界面(3)录入功能界面(4)修改功能界面(5)删除功能界面六、结论与心得经过几个周的开发设计,系统基本开发完毕,其功能基本符合设计需要,能够完成教师基本信息的查询、录入、修改、删除、等基本操作。

相关文档
最新文档