java课程设计

时间:2024.5.2

java课程设计

华东交通大学理工学院

课 程 设 计 报 告 书

所属课程名称 JAVA课程设计 题 目 学生通讯录系统

分 院 电 信 分 院

专业班级 11计科—1班 学 号 20110210440129 学生姓名 余小宝 指导教师 黄建华

20 12年 12月 28日

java课程设计

华东交通大学理工学院

课 程 设 计任 务 书

专 业 计算机科学与技术 班 级 1班 姓名 余小宝

一、课程设计题目 学生通讯录系统 二、课程设计工作:自 2012 年 12 月 18 日起至 2012 年 12 月 28 止。 三、课程设计的内容要求:

本例的目标是开发一个Java图形界面应用程序,能实现教学

测试。具体功能特点如下:

(1) 系统采用数据库存储学生通讯录信息;

(2)实现学生基本信息的按不同条件的查询;

(3)一个界面无法显示所有学生信息,可以实现多页面板

显示,并且可以翻动前后页面进行查;

(4)查询统计功能,能够按照姓名、学号、性别、籍贯、

专业等条件统计分析 ;

(5)系统设计包括规划数据的存储、应用界面、应用功能

华东交通大学理工学院课程设计报告

的实现等环节。

学生签名: 余小宝

20xx年12 月28 日

课程设计(论文)评阅意见

评阅人 职称

20 年 月 日

java课程设计

华东交通大学理工学院课程设计报告

目 录

第1章 课程设计内容及要求.............................................2

第2章 类方法的设计与实现.............................................5

第3章 程序界面 ...........................................................6--7

第4章

第5章

第6章

第7章 程序代码 .........................................................8--18 程序测试 ..................................................18--19 课程设计心得...................................................20--21 参考文献..................................................................22

华东交通大学理工学院课程设计报告

第2章 类方法的设计与实现

2.1测试主界面类tongxunlu

该类的设计包括两个方面:一是应用界面的设计、包括事件驱动;另一个方面就是数据的访问处理,如:学生信息的查询及对后台数据库的访问。

(1) 属性变量设计

Button bt1:查询按钮的初始化;

String Xinxi2[ ]: 用于存放学生信息数组;

Int s: 数组变量初始;

JLabel zh:欢迎界面标签;

JPanel in: 查询界面面板。

(2) 方法设计

构造方法tongxunlu :该方法主要实现界面的布局显示、注册事件监听,以及数据的初始化处理(包括调用xinxi1(ResultSet rt)方法读所有学生信息)。

Zhuye ( ): 实现欢迎界面;

Anniu ( ):按钮的事件处理,实现触发查询主界面窗口;

Xiage ( ): 显示查询主界面;

Duihua (final String name):显示查询对话框,实现按各类条件的查询; actionPerformed( ):动作事件处理,包括转换界面、查询等按钮。

xinxi1(ResultSet rt):调用数据库,实现信息的显示;

华东交通大学理工学院课程设计报告

第3章 程序界面

3.1:程序运行,进入欢迎界面;

java课程设计

3.2:点击“开始查询”按钮,进入查询选项界面;

java课程设计

华东交通大学理工学院课程设计报告

3.3:根据不同条件进行选择查询,比如:点击“按专业查询”按钮,进入如下对话框;

java课程设计

:

3.4:输入关键字,按“查询”,显示所查询的结果信息。

java课程设计

华东交通大学理工学院课程设计报告

第4章 程序代码

import java.awt.Button;

import java.awt.Color;

import java.awt.Component;

import java.awt.Font;

import java.awt.Frame;

import java.awt.TextArea;

import java.awt.TextField;

import java.awt.Window;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.swing.ImageIcon;

import javax.swing.JDialog;

import javax.swing.JLabel;

import javax.swing.JPanel;

/* 主类 */

public class tongxunlu extends Frame implements ActionListener{

protected static final ActionListener ActionListener = null; private JPanel in; Button bt1; JLabel lb1; JLabel lbx; JLabel zh; int s=0; int ye=0; /**image**/

ImageIcon tu_xuan=new ImageIcon("images\\xuan.jpg"); //创建加载图片

ImageIcon xian=new ImageIcon("images\\xian.jpg");//创建加载图片

public tongxunlu(){ zhuye();

华东交通大学理工学院课程设计报告

} this.setVisible(true); /*欢迎界面*/ public void zhuye(){ this.setTitle("学生通讯录系统"); this.setSize(500,430); this.setLocation(400,150); this.setLayout(null);

this.setResizable(false);

this.addWindowListener(new WindowAdapter(){ //关闭窗口的事件处理

@Override

public void windowClosing(WindowEvent e) {

System.exit(0);

}

});

zh=new JLabel (tu_xuan); //图片加载到面板 zh.setSize(this.getSize()); zh.setLocation(0, 0); zh.setVisible(true); this.add(zh);

lb1=new JLabel("欢迎进入学生通讯录系统!");

lb1.setSize(400, 50);

//lb1.setBackground(Color.BLUE);

lb1.setLocation((zh.getSize().width-lb1.getSize().width)/2,150); zh.add(lb1);

Font ziti=new Font("楷体",Font.BOLD,30);

lb1.setForeground(Color.blue);

lb1.setFont(ziti);

anniu();

} /*欢迎界面查询按扭 */ public void anniu(){

bt1=new Button("开始查询");

bt1.setSize(70,35);

bt1.setLocation(205,250);

// bt1.setVisible(true);

华东交通大学理工学院课程设计报告

bt1.setBackground(Color.green); zh.add(bt1);

bt1.addActionListener(this); }

@Override public void actionPerformed(ActionEvent e) { } /*查询主界面*/ public void xiage(){ in=new JPanel (); Button bt2[]=new Button[6]; final String f[]={"按姓名查询","按学号查询","按电话查询","按in.setSize(zh.getSize()); //获取欢迎界面大小 in.setLocation(0, 0); JLabel tu = new JLabel (xian); //图片加载到面板 tu.setSize(in.getSize()); tu.setLocation(0, 0); tu.setVisible(true); in.add(tu); /*按扭摆放位置*/ for(int i=0;i<6;i++){ else bt2[i]=new Button(f[i]); bt2[i].setSize(80,35); bt2[i].setBackground(Color.pink); if(i%2==0) zh.setVisible(false); xiage(); QQ查询","按专业查询","退出"}; bt2[i].setLocation((in.getSize().width-210)/2,100+(i/2)*60); bt2[i].setLocation((in.getSize().width-210)/2+130,100+(i/2)*6 } bt2[0].addActionListener(new ActionListener(){ //注册" @Override

第 10 页 共 21 页 0); in.add(bt2[i]); 按姓名查询"按扭监听器

华东交通大学理工学院课程设计报告

public void actionPerformed(ActionEvent e) { //"按姓名查询"按扭事件处理

扭监听器

事件处理

扭监听器

事件处理

扭监听器

事件处理

// TODO Auto-generated method stub duihua(f[0]); } }); bt2[1].addActionListener(new ActionListener(){ //注册按 @Override public void actionPerformed(ActionEvent e) { //按扭 // TODO Auto-generated method stub duihua(f[1]); } }); bt2[2].addActionListener(new ActionListener(){ //注册按 @Override public void actionPerformed(ActionEvent e) { //按扭 // TODO Auto-generated method stub duihua(f[2]); } }); bt2[3].addActionListener(new ActionListener(){ //注册按 @Override public void actionPerformed(ActionEvent e) { //按扭 // TODO Auto-generated method stub duihua(f[3]); }

华东交通大学理工学院课程设计报告

}); bt2[4].addActionListener(new ActionListener(){ //注册按 @Override public void actionPerformed(ActionEvent e) { //按扭 } // TODO Auto-generated method stub duihua(f[4]); 扭监听器 事件处理 }); bt2[5].addActionListener(new ActionListener(){ //注册按

@Override public void actionPerformed(ActionEvent e) { //按扭 } zh.setVisible(true); 扭监听器

事件处理 in.setVisible(false); }); in.setVisible(true); this.add(in); } /*对话框界面*/ public void duihua(final String name){ final JDialog tan =new JDialog(this,"查询"); //创建弹tan.setSize(250,200); 出对话框 tan.setLocation(this.getLocation().x+50,this.getLocation().y+ tan.setLayout(null); JLabel tishi=new JLabel("请输入tishi.setSize(tan.getSize().width,35);

第 12 页 共 21 页 50); "+name.charAt(1)+name.charAt(2)); //创建提示按扭面板

华东交通大学理工学院课程设计报告

tishi.setLayout(null); tishi.setLocation(2,25); tan.add(tishi); Button cha=new Button("查 询"); //创建查询按扭 cha.setSize(50, 20); final TextField text=new TextField(""); text.setSize(100, 20); text.setLocation(75, 5); cha.setLocation(text.getLocation().x+text.getSize().width+5, tishi.add(cha); tishi.add(text); tan.setVisible(true); tan.addWindowListener(new WindowAdapter(){ //注册弹出对text.getLocation().y); 话框监听器 @Override public void windowClosing(WindowEvent e) { //关闭弹

tan.dispose(); 出对话框事件处理

} }); cha.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); } catch (ClassNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); }

第 13 页 共 21 页 try { Connection Statement stmt=conn.createStatement(); conn=DriverManager.getConnection("jdbc:odbc:通讯录");

华东交通大学理工学院课程设计报告

ResultSet rt=stmt.executeQuery("Select * from 通讯录 where "+name.charAt(1)+name.charAt(2)+" in

(\'"+text.getText()+"\')");

xinxi1(rt); } catch (SQLException e1) { System.out.println("数据库连接错误!");

e1.printStackTrace();

}

}

/*显示所查询的信息对话框*/

public void xinxi1(ResultSet rt){

JLabel XS=new JLabel(" 姓名

性别 专业 电话

地址

QQ");

XS.setSize(1000,50 );

final JDialog xs =new JDialog();

XS.setLocation(xs.getLocation().x+5,

xs.getLocation().y-5);

xs.setTitle("信息显示");

xs.setLayout(null);

xs.setSize(850,470);

xs.setLocation(180,30);

xs.setVisible(true);

xs.add(XS);

Button xia=new Button("下一页");

xia.setSize(70,35);

xia.setLocation(410,350);

xs.add(xia);

Button shang=new Button("上一页");

shang.setSize(70,35);

shang.setLocation(310,350);

xs.add(shang);

final xinxi2[] shu=new xinxi2[1000];

try {

s=0;

while(rt.next()){ 学号

华东交通大学理工学院课程设计报告

shu[s]=new xinxi2(rt.getString("姓名

"),rt.getString("学号"),rt.getString("性别"),rt.getString("专业"),rt.getString("电话"),rt.getString("地址"),rt.getString("QQ"));

shang.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(ye>=20){ ye-=10;

第 15 页 共 21 页 s++; } rt.close(); } catch (SQLException e) {} for(int i=0;i<s;i++){ } ye=10; xia.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { } if(ye<=s){ } ye+=10; for(int i=ye-10;(i<=ye-1&&i<s&&i>=0);i++) shu[i].setVisible(true); xs.add(shu[i]); shu[i].setVisible(false); shu[i].setLocation(5, 30+30*(i%10)); if(i>=10) shu[i].setVisible(false); xs.add(shu[i]); for(int i=ye;(i<ye+10&& i<s&&i>=0);i++){ } });

华东交通大学理工学院课程设计报告

} } for(int i=ye;(i<ye+10&& i>=0&& i<s);i++){ shu[i].setVisible(false); xs.add(shu[i]); } for(int i=ye-10;(i<=ye-1&&i>=0&& i<s);i++) shu[i].setVisible(true); } }); } }); } class xinxi2 extends JLabel{ private JLabel lbx; private JLabel 姓名; private JLabel 性别; private JLabel 专业; private JLabel 学号; private JLabel 电话; private JLabel 地址; private JLabel QQ; public xinxi2(String 姓名,String 学号,String 性别 ,String 专业,String 电话,String 地址,String QQ){

lbx=new JLabel(); this.姓名=new JLabel(); this.性别=new JLabel(); this.专业=new JLabel(); this.学号=new JLabel(); this.地址=new JLabel(); this.电话=new JLabel(); this.QQ=new JLabel(); lbx.setSize(1000, 40); lbx.setLayout(null); this.setSize(1000, 40); this.setLayout(null);

华东交通大学理工学院课程设计报告

} this.姓名.setSize(50,20); this.学号.setSize(110,20); this.性别.setSize(30,20); this.专业.setSize(110,20); this.电话.setSize(100,20); this.地址.setSize(330,20); this.QQ.setSize(100,20); this.姓名.setLocation(2,5 ); this.学号.setLocation(this.姓名.getLocation().x+this.姓this.性别.setLocation(this.学号.getLocation().x+this.学this.专业.setLocation(this.性别.getLocation().x+this.性this.电话.setLocation(this.专业.getLocation().x+this.专this.地址.setLocation(this.电话.getLocation().x+this.电this.QQ.setLocation(this.地址.getLocation().x+this.地 this.姓名.setText(姓名); this.性别.setText(性别); this.电话.setText(电话); this.专业.setText(专业); this.学号.setText(学号); this.地址.setText(地址); this.QQ.setText(QQ); chushi(); 名.getSize().width, 5); 号.getSize().width, 5); 别.getSize().width, 5); 业.getSize().width, 5); 话.getSize().width, 5); 址.getSize().width, 5); public void chushi(){ lbx.add(姓名); lbx.add(性别); lbx.add(专业); lbx.add(学号); lbx.add(地址);

华东交通大学理工学院课程设计报告

} } lbx.add(电话); lbx.add(QQ); this.add(lbx);

/*测试类*/

public class ceshi {

} public static void main(String[] args) { } // TODO Auto-generated method stub tongxunlu zhu=new tongxunlu();

第5章 程序测试

程序测试运行结果按照程序界面的步骤下来显示的结果如下:

java课程设计

华东交通大学理工学院课程设计报告

java课程设计

java课程设计

java课程设计

java课程设计

华东交通大学理工学院课程设计报告

第6章 课程设计心得

经过几天的努力,本次课程设计已圆满完成。在这期间,我深深地感受到设计成功的喜悦,也体味到失败的痛苦。好在前面的学习过程中,理论知识学得比较深刻,加之老师和同学的帮助,很快适应了软件开发的流程。课程设计确实能够锻炼一个人在遇到一个不懂的问题时候,怎样去查阅资料,使一个个疑难问题迎刃而解。这对我以后的工作有非常大的意义。在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,和同学们相互探讨,相互学习。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.

华东交通大学理工学院课程设计报告

第7章 参考文献(资料)

【1】《Java语言程序设计》 清华大学出版社 郎波编著

【2】《Java程序设计实践教程》清华大学出版社出版张思民、梁维娜编著

【3】《数据库基础与应用》 清华大学出版社 刘亚军 高莉莎编著[3]

【4】《Java语言程序设计与实践》 华中科技大学出版社 王薇 杜威主编

更多相关推荐:
java课程设计报告范例

河北科技大学课程设计报告学生姓名祝冬冬学号专业班级计算机科学与技术课程名称学年学期指导教师2011年6月课程设计成绩评定表目录示例一二三1234四五设计题目1设计目的1设计原理及方案1使用的软件工具和环境1需求...

Java课程设计报告模板

Java程序设计课程设计报告20xx20xx年度第1学期Hannio塔专业学生姓名班级学号指导教师完成日期计算机科学技术网络工程马千里B计算机1021010704213徐森20xx年1月8日Hannoi塔目录目...

Java课程设计报告

安阳工学院计算机学院JAVA课程设计报告蜘蛛纸牌游戏专业班级09级网络工程2班学生姓名李瑞琳学生学号20xx03060016小组成员司慧晓郑亚楠司小婷杨达允指导教师姓名宋强目录1选题目的与系统概述32系统可行性...

java课程设计报告

黄淮学院JAVA课程设计报告题目:《日记本的设计与实现》课程设计学院:信息工程学院姓名:学号:专业:软件工程班级:软工1101B班指导教师:二0##年十二月目录1.引言...32.设计目的与任务...43.设计…

java课程设计报告书

java程序设计与应用开发Java课程设计报告书题目学籍管理系统班级数媒学号姓名教师20xx年12月24日1java程序设计与应用开发学籍管理系统一课程设计的目的与要求一课程设计目的与任务随着社会的发展及互联网...

Java课程设计报告【模板】

课程设计报告设计题目专业计算机科学与技术班级101学号20xx16021127学生姓名李贵云指导教师布瑞琴起至时间12161223教师评分20xx年月日目录1概述11目的这学期我们学习了Java语言Java语言...

java课程设计报告 简单绘画板

Java课程设计报告第1页题目班级学号姓名指导老师完成起止日期20xx年12月7日20xx年12月26日目录1题目与要求311题目312参考文献32功能描述43设计思想与系统结构531类设计532结构图64用户...

Java 课程设计报告 扫雷游戏

东华理工大学长江学院课程设计报告封面Java课程设计题目扫雷游戏姓名学号指导老师黄国辉设计时间20xx年4月1东华理工大学长江学院课程设计报告摘要摘要在今天游戏日益快速更新的情况下相信大家对Windows20x...

Java课程设计报告

合肥学院计算机科学与技术系课程设计报告20##~20##学年第#学期课程:Java语言程序设计课程设计名称:企业人事管理系统专业班级:08网络工程(1)班20##年9月一、需求分析系统需求分析:考察中小企业企业…

java课程设计报告

淮海工学院计算机工程学院课程设计报告设计名称面向对象课程设计选题名称图像浏览器的设计与实现姓名学号专业班级网络工程122班系院计算机工程学院设计时间设计地点软件实验室教室面向对象课程设计报告第2页共16页面向对...

java课程设计报告

课程设计说明书课程名称Java程序设计专业班级设计人山东科技大学20xx年1月14日山东科技大学学生课程设计目录1需求分析说明111背景112功能要求113运行环境114功能实现12概要设计说明221模块调用图...

java课程设计万年历程序设计报告

广东商学院华商学院实验报告课程名称Java程序设计课程设计实验项目名称万年历班级与班级代码XX专软件X班实验室名称或课室厚德楼B203专业任课教师刘X璐学号310010114姓名XXX实验日期20xx年12月日...

java课程设计报告(32篇)