JAVA课程设计 通讯录 通讯簿.docx
- 文档编号:2455029
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:42
- 大小:671.59KB
JAVA课程设计 通讯录 通讯簿.docx
《JAVA课程设计 通讯录 通讯簿.docx》由会员分享,可在线阅读,更多相关《JAVA课程设计 通讯录 通讯簿.docx(42页珍藏版)》请在冰豆网上搜索。
JAVA课程设计通讯录通讯簿
一、设计任务与要求
1.1设计任务与要求
制作一个简单的通讯簿,要求可对朋友的姓名、性别、出生日期、工作单位、手机号码、联系电话、职称、职务、联系地址、邮编、Email和QQ号等信息保存、查询、修改和删除等功能。
具有友好界面,且需要用户名和密码登陆进入系统。
使用数据库作为后台连接。
1.2选题目的与意义
如今生活节奏日益加快,各种联系人也不短增多,但是很多人还是单纯的使用手机或纸质电话本来记录联系人的信息,这些记录的方式存在很多缺点,如:
信息量少,查找不方便;容易丢失;存储照片不方便;安全性不高,隐私性不高……
这个通讯簿,可以帮助用户更好的存储朋友的相关信息,易于添加、修改,存储和使用都很方便。
同时这个系统需要登陆才能进入,提高了通讯簿的安全性和隐私性。
通过实现通讯薄功能的实际编程了解基于Swing的图形用户界面开发和数据库操作原理,提高Swing和JDBC技术结合的综合运用能力。
二、需求分析
2.1用户需求分析
通讯簿的目的在于帮助用户实现轻松管理联系人的需求。
为了用户通讯录的隐私性和安全性,通讯簿进入前需要进行系统登录,对用户的帐号和密码进行合法性验证,登录成功则进入系统功能界面。
个人通讯簿登陆系统包括四项功能:
登陆、注册、修改密码、删除账号。
如果是第一次使用通讯簿,需要进行注册,注册成功后即可登陆通讯簿主界面。
在登陆界面,输入已有的账号和正确的密码,还可以进行密码的修改和账号的注销。
通讯簿的主系统主要功能包括实现添加、修改、删除、查询联系人的姓名、手机号码等信息,并且连接进数据库,将信息存储进数据库文件中去。
程序的文本框中可以显示姓名、手机号码等联系人信息,通过通讯簿轻松实现联系人的增、删、改、查需求。
个人通讯簿主系统由四大模块组成:
新建联系人、修改联系人、删除联系人、查询联系人,其功能如下:
1.新建联系人:
用来增加联系人,并且将其信息存入系统数据库。
信息如:
姓名、手机号码、地址、生日、qq等。
2.修改联系人
即编辑联系人,用来对数据库中已有的联系人信息进行编辑,将更新后的信息重新写入到系统数据库。
3.删除联系人
用来删除联系人及其相关信息。
4.查询联系人
用来根据信息内容,查询该信息联系人姓名及其他相关信息。
综上所述,此通讯簿的要求如下:
1每个用户都有自己的密码,确保通讯簿资料安全;
2可以根据用户的需求进行分组的添加和删除;
3联系人资料应齐全,包括地址、邮编、电子邮箱等,并且可以进行增、删、改、查;
4可以设置联系人的头像;
2.2开发环境分析
系统编程基于JAVASwing的图形用户界面开发,数据信息连接后台为Access数据库。
系统运行环境为运行Windows的PC机,具有JDK1.4以上Java编译环境和JCreator3.5或Eclipse3.0以上Java编辑环境,Access2003。
三、系统设计
3.1系统总体设计
进入系统后必须先进行登陆。
登陆成功后,即可进入通讯簿主界面。
在主界面可以进行联系人的添加和查找。
在查看联系人界面中,可以选择修改信息或删除联系人。
系统总体设计图如下:
图3.1.1系统总体设计图
3.2功能模块设计
为了保证通讯簿的隐私性和安全性,进入系统后必须先进行登陆。
同时,可以进行注册、修改密码、删除用户的操作。
登陆成功后,即可进入通讯簿主界面。
在主界面可以进行联系人的添加和查找。
单击添加按钮,界面会切换到联系人信息输入的界面。
按照需求录入联系人信息即可单击保存按钮保存该联系人。
如有需求,可以选择照片进行联系人相册照片的添加。
如果要进行联系人信息的修改或者删除该联系人,单击编辑或删除即可。
主界面上方可以键入联系人姓名或编号进行联系人的查找,输入相关信息后单击查找即可。
双击主界面左边的菜单中的联系人,即可展开联系人分类。
双击分类名称或单击节点连接处,可以展开该分类下的联系人姓名。
单击姓名,即可查看该联系人信息。
双击联系人姓名或单击节点连接处,可以查看该联系人的相册。
3.3类的设计
由于系统需要链接数据库,所以先设计一个类进行数据库的连接。
数据库为Access2000版本。
该类名称为DButil,是数据库操作类。
该类中的属性、方法如下:
privatestaticStringdriver="sun.jdbc.odbc.JdbcOdbcDriver";//声明驱动类字符串
//声明数据库连接字符串
privatestaticStringurl="jdbc:
odbc:
driver={MicrosoftAccessDriver(*.mdb,*.accdb)};DBQ=db/linkman.mdb";
privatestaticConnectioncon=null;//声明数据库连接对象引用
privatestaticStatementstat=null;//声明语句对象引用
privatestaticPreparedStatementpsInsert=null;//声明预编译语句对象引用
privatestaticResultSetrs=null;//声明结果集对象引用
publicstaticConnectiongetConnection()//得到数据库连接的方法
publicstaticvoidcloseCon()//关闭数据库连接的方法
publicstaticbooleancheck(Stringuser,Stringpwd)//登陆验证
publicstaticintupdate(Stringsql)//更新数据库
publicstaticbooleanisExist(Stringsql)//某条记录是否存在
publicstaticintdelUser(Stringuid)//删除用户
publicstaticVector
publicstaticintdelGroup(Stringuser,Stringgroup)//删除分组
publicstaticStringinsertPerson(Stringuid,Vector
publicstaticStringupdatePerson(Stringuid,Vector
publicstaticVector
publicstaticImagegetPic(Stringsql)//获取头像
publicstaticintinsertPic(Stringpath,Stringpid)//新增照片
publicstaticvoidmain(String[]args)
设计一个类Login来完成登陆界面及其功能。
这个类实现了用户登陆、修改密码、注册、用户删除的功能,其属性和方法如下:
privateJPaneljp=newJPanel();//创建面板容器
privateJLabel[]jlArray={newJLabel("账号"),newJLabel("密码"),newJLabel(""),};//创建标签数组
privateJButton[]jbArray={newJButton("登录"),newJButton("注册"),newJButton("修改密码"),newJButton("删除用户")};//创建按钮数组
privateJTextFieldjtf=newJTextField();//填写账号的文本框
privateJPasswordFieldjpf=newJPasswordField();//填写密码的文本框
publicLogin()//登陆界面
publicvoidclear()//清空输入框的信息;并把输入焦点到账号框
publicvoidactionPerformed(ActionEvente)//实现登陆窗体业务功能的方法
publicstaticvoidmain(String[]args)
设计类MainFrame来实现主窗体的功能,其属性和方法如下:
privateStringuname=null;//当前用户的名字
privateStringperNameBefor=null;//编辑的时候之前的名字
privateStringperGroupBefor=null;//编辑的时候修改之前的分组
privatebooleansearchByName=true;//true则默认为按姓名查找
privatebooleanisInsert=false;//是否为添加默认为否
Imageimage=Toolkit.getDefaultToolkit().getImage("img/txl.jpg");//得到图标对象
Iconicon=newImageIcon(image);
privateJPaneljps=newJPanel();//界面上半部分的JPanel容器
privateJButtonjba=newJButton("添加");
privateJButtonjbs=newJButton("查找");
privateJTextFieldjtfs=newJTextField();//按给出信息查找联系人信息
privateJRadioButtonjrbxm=newJRadioButton("按姓名查找",true);//选择查找方式的单选按钮
privateJRadioButtonjrbbh=newJRadioButton("按编号查找");//选择查找方式的单选按钮
privateButtonGroupbg=newButtonGroup();//单选按钮组
privateJPaneljpbr=newJPanel();//单选按钮面板
DefaultMutableTreeNoderoot=newDefaultMutableTreeNode(newNodeValue("联系人",0));//界面左下的树创建树模型指定节点"联系人"为根节点
DefaultTreeModeldtm=newDefaultTreeModel(root);
privateJTreejtz=newJTree();//界面下半部分左边的JTree
privateJScrollPanejspz=newJScrollPane(jtz);//JTree的滚动条
privateDefaultTreeCellRendererdtcr=newDefaultTreeCellRenderer();//树节点的绘制器
privateJPaneljpy=newJPanel();//界面下半部分右边界面,布局管理器为卡片布局
privateJPaneljpyInfo=newJPanel();//右侧显示个人信息的面板
//界面下半部分右边的JPanel容器的个人信息栏目里的控件
privateJLabel[]jlInfo={newJLabel("用户编号:
"),newJLabel("姓名:
"),
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA课程设计 通讯录 通讯簿 JAVA 课程设计 通讯