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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

java课程设计通讯录系统.docx

1、java课程设计通讯录系统第一章 设计分析 需求分析现在各大手机都有自己的、各种通讯录程序,但是这些公司都有自己的版权,我们也不可能得到这些源代码!而且这些公司的程序也相当复杂,仅从日常应用方面来说,对于初学java的我们也无法理解,就需要我们开发一个简单易懂的电话号码查询系统程序。 功能设计本程序的构建参照了手机通讯录,其功能是:有电话录入,修改,增加,删除,按姓名查询,按电话号码查询,按部门查询,按部门显示,显示所有电话号码信息,打印等功能。第二章 概要设计 程序设计在本程序设计过程中用到了父类JFrame、JTable、JPanel、JMenuBar、JMenuItem、JButton。

2、JMenuBar用来创建主菜单 JMenuItem创建子菜单JFrame创建框架 JTable创建表格部分JScorollPane向文本框添加滚动条JMenuItem创建功能键JButton添加触发按钮。编写BufferReader()方法实现待分析文件中数据的读取。编写readLine()方法实现数据的读取。编写Select()法实现查询。编写rankVector()方法实现排序编写addNumber()方法实现新建编写removeNumber()方法实现删除编写modifyPhoneNumber()方法实现修改 利用actionPerformed ()方法做为事件监听器。编写J_fenxi

3、()实现构造。 功能设计主页面以分组形式显示电话号码的详细信息,满足了用户浏览通讯录时分组查看电话号码的要求,同时提供电话号码、姓名、分组、QQ、Email的详细查询及模糊查询功能,方便用户快速查找相关的号码信息。具体要求如下:(1)新增功能:点击菜单栏中的编辑选项,选择新增功能,可添加号码详细信息(2)删除功能:选中号码信息,点击菜单栏中的编辑选项,选择删除功能(3)修改功能:选中号码信息,点击菜单栏中的编辑选项,选择修改功能,点击要修改的单元格所在的行即可修改(4)查询功能:主页面搜索栏可根据号码、姓名、分组等进行搜索(5)退出程序:点击菜单栏中的文件选项,选择关闭功能图2-1 功能结构图

4、第三章 软件环境介绍3. 1 开发环境本次项目的软件环境基于开源软件的使用基础上开发的,所以使用的开发环境是:前台使用JSP+CSS开发,后台使用JSP + MySQL做为基础,使用 JavaBean 对数据进行存取。如图3-1所示:图3-1 前台与后台关系3. 2 开发工具集成开发环境:MyEclipse 2014;服务器:Apache Tomcat ;数据库:MySQL ;数据库管理系统:Navicat MySQL ;JavaBean开发使用:JDK 3. 3 MySql数据设计 表3-1 数据表字段名称数据类型说明NumberVarchar电话号码NameVarchar姓名Partiti

5、onVarchar分组QQnumberVarcharQQ号码EmailVarchar电子邮箱第四章 测试运行 程序运行界面电话号码查询系统一共分为3部分,分别是菜单栏、查询栏、显示框。菜单栏由“文件”、“编辑”、“视图”组成,“文件”菜单有关闭功能键,“编辑”菜单有新建、删除、修改功能键,“视图”菜单有顺序显示和分类显示。如图4-1所示图4-1 运行界面 新建功能选择编辑新建功能,填写号码信息后点击确定后即可保存。图4-2 新增页面 修改功能点击要修改的单元格所在的行,然后点击编辑修改键开始修改信息,点击确定后即可保存。图4-3 修改页面 顺序显示手机号码按从小到大的顺序排列显示。图4-4 顺

6、序显示页面 分组显示按分组的类别显示,同分组的元素在一起。图4-5 分组显示页面 搜索功能可以按照手机号码,姓名、分组等进行搜索。图4-6 搜索页面第五章 总结与分析通过完成一个小程序,不仅发现了自己在java知识中的不足,对java更加了解,还能够增加自己的变成经验,增强对逻辑思维的运用能力。在本次课程设计的过程中,详细阐述了整个网站的设计思路,并对各部分设计周期进行了详尽的分析,最终达成了一个完整的设计方案;在文章的最后,还根据数据库系统的调试结果,提出了可以进一步改进的部分,以便在以后的学习工作中得到更好的完善。以及在投入实际应用后网站可以更加稳定可靠的工作。通过这段时间的课程设计,完成

7、了“电话号码查询系统”的设计,更重要的是又复习了一遍JSP知识,看了许多关于JSP的书,不仅丰富了知识,而且从中学到了编程思想,相信通过这次课程设计,对以后的学习和程序设计会有很大的帮助。第七章 参考文献1 张志峰等,JSP程序设计实训与案例教程,清华大学出版社.20132 荣钦科技,JSP动态网站开发与实例,清华大学出版社.20123 黄梯云,管理信息系统,高等教育出版社. 20134 曾凡奇等:基于 Internet的管理信息系统,中国财政经济出版社,2011 5 易荣华:管理信息系统,高等教育出版社, 2014 6 张靖:管理信息系统,高等教育出版社, 2013 7张国锋:管理信息系统,

8、机械工业出版社,2012 第八章 程序源代码 类PhoneNumberpublic class PhoneNumber private String Number; private String Name; private String Partition; private String QQNumber; private String Email; public PhoneNumber() public String getNumber() return Number; public String getName() return Name; public String getPartiti

9、on() return Partition; public String getQQNumber() return QQNumber; public String getEmail() return Email; public String getPretreatment( int Style ) String Key = null; switch ( Style ) case 1: Key = getNumber(); break; case 2: Key = getName(); break; case 3: Key = getPartition(); break; return Key;

10、 class NumberException extends Exception public String warningString() return 电话号码不符合编码规则!; public boolean isNumeric( String str ) Pattern pattern = (0-9*); return (str).matches(); public boolean setNumber( String number ) (); String Str = ( 0, 3 ); try if( !isNumeric( number ) ) throw new NumberExc

11、eption(); catch ( NumberException e ) ( null, ()+号码为:+number ); return false; try if ( () != 11 ) throw new NumberException(); catch ( NumberException e ) ( null, ()+号码为:+number ); return false; try int num = ( Str ); if ( num 139 ) num /= 10; if( num != 15 | num != 18 ) throw new NumberException();

12、 Number = number; return true; catch ( NumberException e ) ( null, ()+号码为:+number ); return false; public boolean setName( String name ) (); Name = name; return true; public boolean setPartition( String Str ) (); Partition = Str; return true; public boolean setQQNumber( String qqnumber ) (); QQNumbe

13、r = qqnumber; return true; class EmailException extends Exception public String warningString() return 电子邮箱格式错误!; public boolean setEmail( String email ) (); String Str = ( ()-4 ); try if ( !() ) throw new EmailException(); if ( () 1 ) throw new EmailException(); Email = email; return true; catch (

14、EmailException e ) ( null, () ); return false; /* * param args */ public static void main(String args) etPretreatment(Style); if ( (Key) ) ( (pt) ); return tempPhoneNumberList; public boolean addNumber( PhoneNumber phoneNumber, int Index ) try if ( (phoneNumber) ) throw new OperatingException(); cat

15、ch ( OperatingException e ) ( null, () ); return false; try for ( int pt = 0; pt = () ) Index = (); ( phoneNumber, Index ); return true; catch ( OperatingException e ) ( null, () ); return false; public boolean removeNumber( String phoneNumber ) try int Index = 0; for ( int pt = 0; pt = () ) throw n

16、ew OperatingException(); (Index); return true; catch ( OperatingException e ) ( null, () ); return false; public boolean modifyPhoneNumber( PhoneNumber phoneNumber ) try if ( (phoneNumber) ) throw new OperatingException(); int Index = 0; for ( int pt = 0; pt (); pt+ ) if ( (pt).getNumber().equals()

17、) (pt); ( phoneNumber ); catch ( OperatingException e ) ( null, () ); return false; try if ( !(phoneNumber) ) throw new OperatingException(); return true; catch ( OperatingException e ) ( null, () ); return false; public Vector sortPhoneNumber( Vector phoneNumberList, String KeyStr ) Vector tempPhon

18、eNumberList = new Vector( 10, 3 ); for ( int Index = 0; Index (); Index+ ) if ( (Index).getPartition().equals(KeyStr) ) ( (Index) ); return tempPhoneNumberList; public Vector rankVector( Vector phoneNumberList ) Vector tempPhoneNumberList = new Vector(); ( (0); for ( int Index = 0; Index (); Index+

19、) int pt; boolean flag = true; for ( pt = 0; pt (); pt+ ) if ( (Index).getNumber()pareTo(pt).getNumber() 0 ) break; for ( int i = 0; i (); i+ ) if ( (i).getNumber().equals(Index).getNumber() ) flag = false; if ( flag ) ( (Index), pt ); return tempPhoneNumberList; public static void main(String args)

20、 etMnemonic(MenuChar0Index); for (IndexI = 0; IndexI MenuItemIndex.length; IndexI+) MenuIndex.add(MenuItemIndexIndexI); MenuItemIndexIndexI.setMnemonic(MenuCharIndex + 1IndexI); MenuItemIndexIndexI.setAccelerator(ctrl + MenuCharIndex + 1IndexI); Menu1.insertSeparator(1); Menu2.insertSeparator(1); JP

21、anel panel = new JPanel(); JPanel panel2 =new JPanel(); textField = new JTextField( 20 ); ( true ); String s = 号码, 姓名, 分组 ; combobox = new JComboBox( s ); button = new JButton(搜索); ( new BoxLayout(panel, ); ( combobox ); ( textField ); ( button ); ( new BoxLayout(panel2, ); ( View ); ( panel ); ( pa

22、nel2 ); ( true ); ( true ); ( spane ); String path = ; try FileReader fr=new FileReader(path); BufferedReader reader=new BufferedReader(fr); String tempStr = new String(); tempStr = (); PhoneNumber phoneNumber = new PhoneNumber5; for ( int pt = 0; tempStr != null; pt+ ) phoneNumberpt = new PhoneNumb

23、er(); Vector rowData = new Vector(5); phoneNumberpt.setNumber( tempStr ); ( tempStr ); tempStr = (); phoneNumberpt.setName( tempStr ); ( tempStr ); tempStr = (); phoneNumberpt.setPartition( tempStr ); ( tempStr ); tempStr = (); phoneNumberpt.setQQNumber( tempStr ); ( tempStr ); tempStr = (); phoneNu

24、mberpt.setEmail( tempStr ); ( tempStr ); ( rowData ); phoneNumberpt ); tempStr = (); (); catch ( IOException e ) ( null, e ); (new ActionListener() public void actionPerformed(ActionEvent e) int Style = ()+1; String KeyStr = (); Vector phoneNumberList = (KeyStr, Style ); int flag = ()-1; for ( int i

25、 = 0; i flag; i+ ) ( ()-1 ); for (int pt = 0; pt (); pt+) Vector rowData = new Vector(5); (pt).getNumber(); (pt).getName(); (pt).getPartition(); (pt).getQQNumber(); (pt).getEmail(); (rowData); (); ); MenuItem00.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) JMenuItem Item = (JMenuItem) (); (0); ); MenuItem10.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) class J_Table extends JFrame public DefaultTableModel m_data; public JTable m_view; public PhoneNumber phoneNumber; public J_Table() super(新建); p

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1