ImageVerifierCode 换一换
格式:DOCX , 页数:58 ,大小:615.06KB ,
资源ID:4678843      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4678843.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java课程设计报告学生家教管理系统设计与实现.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

Java课程设计报告学生家教管理系统设计与实现.docx

1、Java课程设计报告学生家教管理系统设计与实现Java课程设计报告 学 校:大连民族学院 学 院:理学院专 业:信息与计算科学 题 目:学生家教管理系统设计与实现 姓 名:黄*(组长)信息091班 茹* 信息092班 段* 信息092班 完成时间: 2012年4月 24 2.5 数据库模型 6 2.6 数据库表格73.1 界面组成部分113.2学生家教属性的封装与构造方法303.3 Jdbc的详细结构及数据库语言363.4异常处理49学生家教管理系统摘要: 该报告中的程序是使用Java程序编写并且通过JDBC连接mysql数据库,能够进行输入输出家教信息操作将家教的各种信息存入数据和在数据库中

2、删除,并具有家教查询、添加、替换、注销、记录家教缺勤和计算薪水等功能,不同之处是本程序能够家教的的各项情况进行统计。该程序主要用到了Java swing和事件监听等。本程序分为三大步份(组长)黄兴雷负责需求分析及JM包中针对界面的制作,茹霞同学负责Jdbc包的制作,段文梅同学负责Worker包学生家教信息的私有封装及数据库的制作,期间三位同学之间相互联系配合完成程序的设计与实现关键字: Java语言、JDBC、数据库、数据库语言、界面。第一章、需求分析1.1需求分析对于现在在校大学生在校接任家教频繁,为了提供一个高效的、可行的、可控的、安全的中介,需要一个方便关于管理的操着平台,记录和保存每一

3、位学生家教的基本信息和家教情况,为学生提供更多的家教对象和更合理的家教对象分配,据此通过java程序设计实现这一学生家教管理系统。1.2功能设计本程序根据学生家教管理的需求设置了六大主要功能,即所有家教查询、家教添加、家教注销、家教替换、家教记录、家教查询。(1)程序运行出现主界面,主界面上有家教信息显示框(显示框自动出现滚动条)、家教部分信息输入框及执行六大功能的按钮;(2)点击所有家教,显示框中出现所有的家教及其个人信息,其个人信息包括姓名、所在大学、家教对象、星期家教安排、家教次数、家教附加(加班)、家教缺勤、薪水、时间,另外显示家教当日家教的情况包括当日家教、当日缺勤、当日附加、当日时

4、间。 (3)在输入框输入所要操着家教的姓名,点击家教查询或家教记录的按钮,然后在显示框中显示出所要操着得出的信息;(4)在输入框输入所要操着家教的姓名,点击家教查询或家教记录的按钮,之后弹出各种功能的信息框,可在其中添加活该面信息,并且点击信息框中的返回或确认按钮可以弹出操着成功或操着失败的信息框;(5)操着中改变的、增添的各项数据可存于数据库当中,删除的数据从书库中消失第二章、 概要设计2.1 程序设计思路本程序通过建立Worker、Jdbc、JM三个包分别来实现整个程序的三大板块。Worker包当中的Mteacher类定义单个个老是工作情况各个私有属性,并对其进行封装,Teachers类定

5、义单个学生家教的个人信息的私有属性也对进行封装。Jdbc包用于连接数据库,其中的DButil类和DButil1类中的方法通过调用不同的构造方法从界面获取数据信息,再通过ps带入数据查询语言,然后使用数据库分别交叉控制程序对数据库的操着,同时也可以将数据库中的数据通过Worker中的构造方法创建出来,显示在界面中JM包中的程序用于界面的显示,为满足显示的需要总共创建了7个界面Screen、Screen1、Screen2、Screen3、Screen4为Screen的子界面,Screen6、Screen7为判断操着成功与否的界面,所有界面运用了java.swing、java.util、java.a

6、wt、java.envent包中的类及各种接口、方法。本程序中各项数据库表和Worker包中的各个类相互对应,其中表中当中的列和元组与worker包中的类的属性一一对应。2.2 模块说明图2.3 程序流程 2.4 程序相关说明(1)整个程序分为三大板块,仿照MVC模式进行总体框架设计,其中Jdbc包负责连接数据库,其中在个JM包中Screen3在界面初始化各项为空白,Screen1、2、4中的部分单行文本框显示内容的初始化和数值是从数据库中取出数值然后根据Worker包中相关构造方法创建取出,其中时间是生成当前时间存入数据库。(2)本程序书库是用mysql数据库编译器制作数据表器端口号为330

7、6,Jdbc中的DButil与DButil1相互交叉通过书库语言向数据库中存取数值(3)本程序中的Worker包中主要针对两个学生连个对象进行封装,和添加构造方法和toString()方法(4)本程序中使用的监听类为ActionHappen1 实现 ActionListener接口2.5数据库模型2.6数据库表(1)Teachers表,表中工资为每次20元,缺勤扣20元(2)Mteacher,表中所有记录为当日记录,并且结果累加到Teachers表中2.7 程序运行界面(1)运行程序显示首页界面(2)所有家教:点击所有家教按钮则会在第一栏文本框中显示出所有家教的信息,可以通过拖动滚动条浏览所有

8、情况(3)学生家教:添加点击家教添加,弹出学生家教注册添加框,注册完成后再点击确认添加弹出验证框,若在点击返回按钮首页则回到首页界面(4)家教替换:在第二栏输入要操着的人名,击家教替换弹出学生家教替换框,出被替换人出名字以及家教次数、缺勤、附加及薪水已初始化不可改,在改完其他信息后点击确认替换即弹出验证框,点击返回首页按钮首页界面(5)家教注销:在第二栏输入要操着的人名,要开除一个家教或者解除家教关系时,点击家教注销弹出学生家教注销,点击确认删除按钮,弹出验证框(6)家教查询:在第二栏输入要查询人的名字,点击家教查询,若没有要找的家教,或则家教已被删除则弹出操着失败,点击按钮返回首页,则出首页

9、界面(7)家教查询:在第二栏输入要操着的人名,点击家教记录,则在第一栏文本框显示栏怎会显示出关于查询人的所有家教记录,如果没有此人,则弹出操着失败验证框,如果有此人则可给所操作的家教记录当日的工作情况(8)家教记录:在第二栏输入要操着的人名,点击家教记录,若有此人则会显示所操着人的所有操着信息,显示的信息可以通过拖动滚动条浏览,若儿没有此人或者此人已被删除则弹出操着失败对话框第三章. 程序详细设计与分析3.1界面的组成部分(1)Screenpackage JM;import java.awt.BorderLayout;import java.awt.GridLayout;import java

10、.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTextArea;import Jdbc.DBUtil;import Jdbc.DButil1;public class Screen JTextArea jTextArea = new JTextArea(50, 50

11、);/创建文本框 JTextArea jTextArea2 = new JTextArea(50, 50); JScrollPane jScrollPane = new JScrollPane(jTextArea); / 添加滚动条 JScrollPane jScrollPane2 = new JScrollPane(jTextArea2); String aString = 家教添加, 家教替换, 家教注销, 家教查询 ,所有家教,家教记录; JButton jButton = new JButton6; /创建一个窗口 JFrame frame = new JFrame(学生家教管理系统)

12、; /main执行一个构造方法 public static void main(String args) new Screen(); /构造首页界面 public Screen() JPanel jPanel = new JPanel(); jPanel.setLayout(new BorderLayout(); for (int i = 0; i aString.length; i+) jButtoni = new JButton(aStringi); /给各个按钮添加监听 jButtoni.addActionListener(new ActionHappen1(); jPanel.add(

13、jButtoni); /将此jpanle布局管理 jPanel.setLayout(new GridLayout(1,6); frame.add(jScrollPane,BorderLayout.NORTH); frame.add(jScrollPane2, BorderLayout.CENTER); frame.add(jPanel,BorderLayout.SOUTH); /对此窗口进行大小,可视,可删除,布局管理等添加 frame.setResizable(true); frame.setBounds(28, 28, 800, 300); frame.setSize(900,500);

14、frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); frame.setLayout(new GridLayout(3, 1); /创建一个监听类实现ActionListener接口 public class ActionHappen1 implements ActionListener public void actionPerformed(ActionEvent e) String name = e.getActionCommand(); if(所有家教.equals(name) /当点击

15、“所有家教”获取文本框jTextArea2中内容,然后传给形参,执行查询语句 /查询所有家教的工作情况 jTextArea.setText(DBUtil.findUser().toString(); if(家教注销.equals(name) new Screen1(jTextArea2.getText(); /当点击“家教注销”按钮页面跳转到Screen1, /获取文本框jTextArea2中内容,然后传给形参,执行查询语句 if(家教替换.equals(name) /获取文本框汇jTextArea2中内容,然后传给形参,执行查询语句 /当点击“家教替换“按钮页面跳转到Screen2 new

16、Screen2(jTextArea2.getText(); if(家教添加.equals(name) new Screen3(); /获取文本框jTextArea2中内容,然后传给形参,执行查询语句 /当点击“家教添加“按钮页面跳转到Screen3 if(家教查询.equals(name) /当点击“家教查询”按钮页面跳转到Screen4 /获取文本框jTextArea2中内容,然后传给形参,执行查询语句 new Screen4(jTextArea2.getText(); if(家教记录.equals(name) /当点击“所有家教”获取文本框jTextArea2中内容,然后传给形参,执行查询

17、语句 /查询所有家教的工作情况 jTextArea.setText(DButil1.find1(jTextArea2.getText().toString(); (2)Screen1package JM;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing

18、.JLabel;import javax.swing.JPanel;import javax.swing.JTextArea;import Woker.Teachers;import Jdbc.DBUtil;import Jdbc.DButil1;public class Screen1 public static JTextArea jTextArea = new JTextArea9; /创建多个文本框 JLabel jLabel = new JLabel9; /创建多个标签 JPanel jPanel = new JPanel9; /创建多个panel static String bSt

19、ring = 姓名:,所在大学,家教对象:,星期家教安排:, 家教次数,家教附加:,家教缺勤:,薪水:,时间:; JButton jButton1 = new JButton(确认删除); JButton jButton2 = new JButton(取消); JFrame frame = new JFrame(学生家教注销); /通过构造screen方法对界面进行初始化 public Screen1( String context) frame.setLayout(new GridLayout(10,1,10,10); for (int i = 0; i 9; i+) jPaneli = n

20、ew JPanel(); jTextAreai = new JTextArea(50, 50); jLabeli = new JLabel(bStringi); jPaneli.add(jLabeli); jPaneli.add(jTextAreai); jPaneli.setLayout(new GridLayout(1,2); frame.add(jPaneli); /向界面当中的文本框当中赋加内容,内容即为Teachers对象各属性值 Teachers conn = DBUtil.find(context); jTextArea0.setText(conn.get姓名(); jTextA

21、rea1.setText(conn.get所在大学(); jTextArea2.setText(conn.get家教对象(); jTextArea3.setText(conn.get星期家教安排(); jTextArea4.setText(conn.get家教次数()+); jTextArea5.setText(conn.get家教附加()+); jTextArea6.setText(conn.get家教缺勤()+); jTextArea7.setText(conn.get薪水()+); jTextArea8.setText(new java.util.Date().toString(); /

22、对screen1界面当中的按钮添加监听,并布局 jButton1.addActionListener(new ActionHappen1(); jButton2.addActionListener(new ActionHappen1(); jPanel8 = new JPanel(); jPanel8.add(jButton1,BorderLayout.WEST); jPanel8.add(jButton2,BorderLayout.EAST); jPanel8.setLayout(new GridLayout(1, 2); frame.add(jPanel8); /对此窗口初始化进行处理 f

23、rame.setResizable(true); frame.setBounds(28, 28, 700, 600); frame.setSize(700, 600); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); /创建一个监听类实现 ActionListener接口 public class ActionHappen1 implements ActionListener public void actionPerformed(ActionEvent e) /通过getActionC

24、ommand()接收窗口中按钮 String name = e.getActionCommand(); if(确认删除.equals(name) try DBUtil.drop(jTextArea0.getText(); DButil1.drop1(jTextArea0.getText(); new Screen7(); catch (Exception e2) new Screen6();/抛出异常,若出现异常,弹出操着失败窗口 else if (取消.equals(name) new Screen(); (3)Screen2package JM;import java.awt.Border

25、Layout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextArea;import Woker.Mteacher;import Woker.Teachers;import Jdbc.DBUti

26、l;import Jdbc.DButil1;public class Screen2 public static JTextArea jTextArea = new JTextArea10; JLabel jLabel = new JLabel10; JPanel jPanel = new JPanel11; static String bString = 姓名:, 所在大学:, 家教对象, 星期家教安排:, 家教次数, 家教附加:, 家教缺勤:, 薪水:, 时间:, 被替换人: ; JButton jButton1 = new JButton(确认替换); JButton jButton2

27、= new JButton(取消); JFrame frame = new JFrame(学生家教替换); /构造方法初始化screen2 public Screen2(String context) frame.setLayout(new GridLayout(11, 1, 10, 10); for (int i = 0; i 10; i+) jPaneli = new JPanel(); jTextAreai = new JTextArea(50, 50); jLabeli = new JLabel(bStringi); jPaneli.add(jLabeli); jPaneli.add(

28、jTextAreai); jPaneli.setLayout(new GridLayout(1, 2); frame.add(jPaneli); /创建对象获取teachers的各项属性值 Teachers conn = DBUtil.find(context); jTextArea0.setText(conn.get姓名(); jTextArea1.setText(conn.get所在大学(); jTextArea2.setText(conn.get家教对象(); jTextArea3.setText(conn.get星期家教安排(); jTextArea4.setText(conn.get家教次数() + )

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2