30560212黎浩峰信息系统程序设计设计性实验报告.docx
- 文档编号:25518561
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:17
- 大小:1.03MB
30560212黎浩峰信息系统程序设计设计性实验报告.docx
《30560212黎浩峰信息系统程序设计设计性实验报告.docx》由会员分享,可在线阅读,更多相关《30560212黎浩峰信息系统程序设计设计性实验报告.docx(17页珍藏版)》请在冰豆网上搜索。
30560212黎浩峰信息系统程序设计设计性实验报告
《信息系统程序设计》设计性实验报告
姓名:
学号:
200630560212
班级:
06信管二班
同组人员:
简嘉鸿、黄磊、胡少锋
完成时间:
2009年6月
指导教师:
吴春胤
学生信息管理系统
1、系统目标
总体目标有两个:
(1)在功能上实现记录通讯信息,实现通讯录的录入、修改、删除、查询等功能。
(2)在界面设计上我们最求用最简洁,最实在的界面来作为我们的用户接口。
2、基本功能
本软件主要实现5个功能:
1、首先是通讯录信息录入功能;
在这个功能中主要是设计在主要页面的各种信息的录入,比如人的姓名、家庭住址、联系电话等等。
在这个功能里面还加上了一个图片的上传、更新、删除的功能,但是我觉得是存在缺陷的,因为我们不是把图片直接传入数据库,而是直接把图片的文件路径传入数据库,所以说这个功能是存在问题的(主要在这里实现了文件选择器的功能JFileChooser);按保存按钮后,最后把信息存入数据库,按清空的话把jTextField里的信息清空,重新输入。
2、通讯录信息信息查询功能;
这里是主要包括表单查询和头像查询的功能,主要实现的是表单查询,而在头像查询中由于最后实现不了,所以只实现了表单查询模式;在查询中包涵阶段划分的查询和按姓名查询,在表单查询中的主要界面功能:
按阶段查询和按姓名查询:
通过连接数据库再通过把它显示在table中;
3、通讯录信息修改功能:
修改录入的通讯录数据
4、通讯录信息删除功能:
删除通讯录的数据:
5、在各种情况下的报错功能:
比如在关键“姓名”栏里面如果是空的话,就会报错,如下
我们组是四人合作的,我是负责第二个功能模块设计(通讯信息查询功能设计)。
其中的关键代码:
privateJButtongetJButton(){
if(jButton==null){
jButton=newJButton();
jButton.setText("查找我的好友");
jButton.setVisible(false);
jButton.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
jPanel2.setVisible(true);
});
}
returnjButton;
}
privateJComboBoxgetJComboBox(){
if(jComboBox==null){
jComboBox=newJComboBox(phase);
jComboBox.setVisible(false);
jComboBox.setMaximumRowCount(6);
jComboBox.setSelectedIndex(0);
jComboBox.addItemListener(newjava.awt.event.ItemListener(){
publicvoiditemStateChanged(java.awt.event.ItemEvente1){
if(e1.getStateChange()==e1.SELECTED){
phase02=phase[jComboBox.getSelectedIndex()];
ConnBeanCB=newConnBean();
mytable=CB.tableInformSearch(phase02);
String[]colname={"姓名","性别","阶段分类","家庭地址","家庭电话","手机","QQ","Email","备注"};
//jTable=newJTable(mytable,colname);
table=newJTable(mytable,colname);
jpanel=newJPanel();
jlabel01=newJLabel("姓名||性别||阶段分类||家庭地址||家庭电话||手机||QQ||Email||备注");
jlabel01.setFont(newFont("Serif",Font.PLAIN,14));
jlabel01.setSize(700,400);
table.setSize(700,600);
jpanel.add(jlabel01,BorderLayout.NORTH);
jpanel.add(table,BorderLayout.CENTER);
jpanel.setVisible(false);
jTabbedPane.add("第"+i+++"条查询结果",jpanel);
jPanel2.setVisible(false);
}
}
});
}
returnjComboBox;
}
privateJTextFieldgetJTextField(){
if(jTextField==null){
jTextField=newJTextField();
jTextField.setPreferredSize(newDimension(70,22));
jTextField.setVisible(false);
mytext=jTextField.getText();
}
returnjTextField;
}
privateJButtongetJButton4(){
if(jButton4==null){
jButton4=newJButton();
jButton4.setText("查找我的好友");
jButton4.setVisible(false);
jButton4.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
ConnBeanCB=newConnBean();
mytable02=CB.tableInformSearch01(mytext);
String[]colname={"姓名","性别","阶段分类","家庭地址","家庭电话","手机","QQ","Email","备注"};
table01=newJTable(mytable02,colname);
jlabel02=newJLabel("姓名||性别||阶段分类||家庭地址||家庭电话||手机||QQ||Email||备注");
jlabel02.setFont(newFont("Serif",Font.PLAIN,14));
table01.setSize(700,400);
jpanel.add(jlabel02,BorderLayout.NORTH);
jpanel.add(table01,BorderLayout.CENTER);
//jpanel.setVisible(false);
jTabbedPane.add("第"+i+++"条查询结果",jpanel);
}
});
}
returnjButton4;
}
3、系统设计思路
1、我们是讨论关于我们java综合性设计是做那个系统,最后确定的是通讯录。
在确定通讯录为我们的综合性设计后,我们首先想的是我们要实现那些功能。
比如通信录信息的录入、查询、更改、删除等。
其次,我们就是设计我们的界面,在保证各种功能的简单实现的前提下,尽可能的让整个软件界面简洁,去除一些冗余的部分。
2、在完成了初步的构思之后,我们首先是设计数据库,和设计每种数据的数据格式。
在确定数据库的各种数据之后,我们就开始在数据库中建表,确定数据库的连接模式(我们这里选的是:
ODBC数据库连接模式)
3、我们想我们每个功能实现需要用到的技术;比如在录入功能中,为了通讯录设置得更加的人性化,我们在选择阶段和性别中我们用到了下拉列表组件(JComboBox),另外在录入系统中我们要用到文件选择器的功能(JFileChooser),在同一个Panel上怎么通过案例的触发实现不同Panel的切换,还有就是通过二维数组和数据库查询等实现在通过tabbedPane、table、label等等。
还有就是在java上做一个连接数据库的Bean,实现在录入、更新、删除、查询等功能上的界面实现。
4、系统的工作流程:
通讯录信息录入—》保存到数据库—》更新数据库—》继续录入
通讯录信查询:
—》从数据库中提取有关要查询的数据—》输出到界面
数据库修改—》从数据库查询相关的数据—》输出到界面—》数据库修改—》保存到数据库
数据库删除—》从数据库中删除
4、系统程序结构
1、数据库结构的实现:
ODBC的连接
2、通讯录程序的主要系统结构:
其中一个很主要的是,通讯录的主程序设计在addressList包下的MainFrame.java,在主窗口下主要的实现功能是主目录的工具条
和录入版面。
而在addressList_Component主要的是放置一些删除、更改、查询等功能框的实现。
还有DBconnect包里面的ConnBean.java和Database.java是实现连接数据库的。
MainFrame.java主目录的结构包括:
在查询模块下的目录结构是:
在删除模块的结构是:
在修改模块的结构是:
各个功能模块的协调:
Mainframe.Java主要是实现数据录入功能窗口,实现数据录入,主目录也在Mainframe中,实现各个功能模块的衔接。
数据库DBconnect.java包下的ConnBean.java、和DataBase.java实现数据连接
查询模块是在在主目录的查询按钮被触发后弹出来的模块,在表单查询中分为阶段查询和姓名查询,选择一个阶段或录入一个姓名后转到数据库的查询,最后在查询模块中显示出查询的结果
其他的删除
5、系统运行测试
在我们的分组中,我们每个模块都会进行模块测试,在综合组建后我们对总的通讯录系统进行了系统测试,主要就是数据录入、数据修改、数据查询、数据删除功能的测试、除了还有一些功能没有实现之外(有些是因为没时间了,还有一些就是因为有些技术真的还没会,而在功能设计的时候又估计不到而造成的)、
图片上传功能(JFileChooser)功能的实现:
信息录入功能:
在这里主要是检查信息的录入,保存,图片上传、更新、删除,下拉表组件,清空功能等
报错功能(因为在录入的时候姓名是不可以空的~)
主目录栏:
信息查询功能:
按阶段查询的实现:
在选择一个阶段后时出现数据库查询表:
(其中主要是测试table的实现和JTabblePane的实现,不同结果在不同的栏目下实现)
另外一个是头像查询栏:
(主要测试的是从数据库中调出路径,再从路径中读取文件,写到panel版面上,再通过JButton的setToolTipTExt功能显示每个图片的信息)
按姓名查询的实现:
修改功能的实现:
输入你要修改的名字:
删除功能
在确定后:
六.实验体会
有三点:
1、这次实验让我更加地运用JAVA和SWING图形界面设计程序,加深了与其相关知识的理解,
2、在实验过程中,我们碰到不少问题,经过查找资料和看一些相关视频让我懂得了更多的JAVA应用,对编好一个程序加深了认识。
3、这是团队作业,我更加懂得要团队合作,相互协调,沟通很重要,没有沟通就很容易出现问题。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 30560212 黎浩峰 信息系统 程序设计 设计 实验 报告