博客
关于我
java入门编程之个人通讯录管理系统
阅读量:543 次
发布时间:2019-03-09

本文共 1028 字,大约阅读时间需要 3 分钟。

个人通讯录管理系统是一个功能要求较高的开发项目,涉及数据库管理、图形界面设计以及多个功能模块的实现。本文将系统地分析和设计一个符合用户需求的通讯录管理系统。

一、 功能需求

  • 设计一个个人信息类该类包含字段序号、姓名、手机号码、地址和邮箱等。
  • 可以对该个人信息进行添加、删除和修改操作。
  • 可以根据姓名或地址进行查询,支持精确查找和模糊查找,查找不到则提示"查无此人"。
  • 使用外部文件或数据库存储相关数据。
  • 二、 类设计系统将按照功能划分为八个独立的类:

  • 通讯类(tongxun): 功能面板,通过选择不同按钮实现各项功能。
  • 主方法(Test): 程序的入口类。
  • 查询类(Select): 用于查询联系人信息。
  • 新增类(Insert): 用于新增联系人。
  • 展示类(Display): 用于展示所有联系人信息。
  • 修改类(Update): 用于修改联系人信息。
  • 删除类(Delete): 用于删除联系人。
  • 复制类(Copy): 用于备份联系人数据。
  • 三、 开发环境开发工具:Eclipse

    四、系统设计解释

  • JVM内存管理:采用хиarella算法进行内存管理,保证程序稳定运行。
  • 界面设计:
    • 采用Swing框架进行界面开发,确保跨平台支持。
    • 使用GridLayout和多选框组件设计用户界面,通过ActionListener事件处理用户操作。
  • 数据库设计:
    • 使用RandomAccessFile进行数据存储,支持快速的读写操作。
    • 数据按记录形式存储,每条记录占4行,第一行为序号,后三行为联系人信息。
  • 功能实现:
    • 添加功能:通过FileWriter将输入信息写入文件。
    • 删除功能:采用RandomAccessFile读取文件内容,修改删除部分字段,并用FileWriter重新写入文件。
    • 查询功能:
      • 精确查找:按序号精确匹配数据。
      • 模糊查找:支持单字符和多字符模糊匹配,确保查找结果准确。
    • 修改功能:类似于删除功能,但修改相关字段后重新写回文件。
    • 备份功能:按记录形式读取数据,写入新的文件中。
  • 五、 可能遇到的问题及解决方法

  • 文件读写错误:使用try-with-resources语句包裹读取和写入操作,确保资源正常释放。
  • 唯一性约束:在新增和修改操作中,检查手机号码和邮箱是否已存在,避免重复记录。
  • 模糊查找性能问题:采用字符串匹配算法优化查找逻辑,提高查询效率。
  • 通过以上设计和分析,可以确保通讯录管理系统的各项功能实现准确且稳定运行,满足用户的实际需求。

    转载地址:http://afjsz.baihongyu.com/

    你可能感兴趣的文章
    Property 'submit' of object #<HTMLFormElement> is not a function
    查看>>
    property--staticmethod--classmethod
    查看>>
    propertyGrid
    查看>>
    propertyPlaceholderConfigurer读取配置文件
    查看>>
    PyTorch-Tutorials【pytorch官方教程中英文详解】- 5 Build Model
    查看>>
    proteus三输入与非门名字_proteus 元件名称对照表
    查看>>
    Protobuf - 语法、字段使用规则、注意事项
    查看>>
    protobuf —— 快速上手
    查看>>
    protobuf —— 认识和安装
    查看>>
    Protobuf 三个关键字required、optional、repeated的理解
    查看>>
    ProtoBuf 原理详解
    查看>>
    Protobuf 实例(java)
    查看>>
    ProtoBuf 实际应用(java)
    查看>>
    Protobuf 属性解释
    查看>>
    Protobuf 编译工具转换 Java 类
    查看>>
    protobuf使用详解
    查看>>
    ProtoBuf在使用protoc进行编译时提示: Required fields are not allowed in proto3
    查看>>
    Protobuf学习 - 入门
    查看>>
    protobuf对象与JSON相互转换
    查看>>
    ProtoBuf的介绍以及在Java中使用protobuf将对象进行序列化与反序列化
    查看>>