(一)编程实现
1.创建名片实体类

代码:

package test;public class Card {private String id;private String name;private String workUnit;private String post;private String telephone;/*** 无参构造方法*/public Card() {}/*** 有参构造方法** @param id* @param name* @param workUnit*@param post* @param telephone*/public Card(String id, String name, String workUnit, String post, String telephone) {this.id = id;this.name = name;this.workUnit = workUnit;this.post = post;this.telephone = telephone;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getWorkUnit() {return workUnit;}public void setWorkUnit(String workUnit) {this.workUnit = workUnit;}public String getPost() {return post;}public void setPost(String post) {this.post = post;}public String getTelephone() {return telephone;}public void setTelephone(String telephone) {this.telephone = telephone;}@Overridepublic String toString() {return "Card{" +"id='" + id + '\'' +", name='" + name + '\'' +", workUnit='" + workUnit + '\'' +", post='" + post + '\'' +", telephone='" + telephone + '\'' +'}';}
}

结果:

2.创建名片管理类
(1)创建主菜单

package test;import java.util.Scanner;public class CardManagement {public class CardManagement {public static void main(String[] args) {// 声明部分int mc1;Scanner sc = new Scanner(System.in);boolean isRunning = true; // 循环控制变量while (isRunning) {// 绘制一级菜单System.out.println("  名片管理系统");System.out.println("================");System.out.println("   1. 登录");System.out.println("   0. 退出");System.out.println("================");System.out.print("输入菜单编号[1,0]:");mc1 = sc.nextInt();// 根据用户选择进行相应的操作switch (mc1) {case 1:// 调用登录方法login();break;case 0:System.out.println("谢谢使用~再见~");isRunning = false; // 结束循环break;default:System.out.println("输入的菜单编号有误!");}}}
}

(2)创建登录方法

 /*** 登录方法*/private static void login() {String username, password;Scanner sc = new Scanner(System.in);System.out.print("用户名:");username = sc.next();System.out.print("密  码:");password = sc.next();if (username.equals("wangqian") && password.equals("202386")) {System.out.println("登录成功~");// 调用名片管理方法cardManagement();} else {System.out.println("用户名或密码有误,登录失败~");}}

(3)创建名片管理方法

/*** 名片管理方法*/private static void cardManagement() {int mc2;Scanner sc = new Scanner(System.in);boolean isRunning = true; // 循环控制变量while (isRunning) {// 绘制二级菜单System.out.println("=======名片管理========");System.out.println("  1. 添加名片");System.out.println("  2. 修改名片");System.out.println("  3. 查询名片");System.out.println("  4. 删除名片");System.out.println("  5. 读取名片");System.out.println("  6. 保存名片");System.out.println("  7. 返回上级");System.out.println("=======================");System.out.print("输入菜单编号[1,2,3,4,5,6,7]:");mc2 = sc.nextInt();switch (mc2) {case 1:System.out.println("执行添加名片功能~");break;case 2:System.out.println("执行修改名片功能~");break;case 3:System.out.println("执行查询名片功能~");break;case 4:System.out.println("执行删除名片功能~");break;case 5:System.out.println("读取名片文件到名片数组列表~");readCardFile();//调取保存名片方法break;case 6:System.out.println("将名片数组列表写入名片文件~");saveCards();//调用名片保存方法break;case 7:isRunning = false; // 结束二级菜单循环break;default:System.out.println("输入的菜单编号有误!");}}}

(4)创建添加名片方法

/*** 添加名片方法*/private void addCard() {// 声明变量String id;String name;String workUnit;String post;String telephone;Scanner sc = new Scanner(System.in);// 输入名片信息System.out.print("编号:");id = sc.next();System.out.print("姓名:");name = sc.next();System.out.print("单位:");workUnit = sc.next();System.out.print("职位:");post = sc.next();System.out.print("手机:");telephone = sc.next();// 创建名片对象Card card = new Card(id, name, workUnit, post,telephone);

(5)创建保存名片方法

/*** 保存名片到文件*/private static void saveCards() {try {//创建文件字符输出流FileWrite fw = new FileWrite(fileName:"cards.txt");//创建名片容器字符串缓冲对象StringBuffer cardsBuffer = new StringBuffer();//用增强for循环遍历名片数组列表for (Card card : cards) {//输出名片对象String.out.println(card);//创建名片字段信息(空格作为分隔符)buffer.append(card.getId() + " ");buffer.append(card.getName() + " ");buffer.append(card.getWorkUnit() + " ");buffer.append(card.getPost() + " ");buffer.append(card.getTelephone());//将名片信息添加到名片容器字符串缓冲对象cardBuffer.append(buffer.toString() + "\n");}//将名片容器字符串缓冲对象里的数据一次性写入文件fw.write(cardsBuffer.toString());//关闭文件字符输出流fw.close();//提示用户写入成功system.out.println("恭喜,名片数据成功写入文件!");} catch (IOException e) {e.printStackTrace();}

(6) 读取名片文件,保存到名片数组列表

      /*** 读取名片文件,保存到名片数组列表*/private static void readCardFile () {try {//创建文件字符输入流FileReader fr = new FileReader(fileName:"cards.txt")//创建缓冲字符输入流BufferReader br = new BufferedReader(fr);//定义行变量String nextLine = "";//通过循环读取名片文件while ((nextLine = br.readLine())! = null) {String[] fields = nextLine.split(regex: " ");//创建名片对象Card card = new Card();//用字段数组设置对象属性card.setId(fields[0]);card.setName(fields[1);card.setWorkUnit(fields[2]);card.setPost(fields[3]);card.setTelephone(fields[4]);//输出名片对象System.out.println("添加" + card + "到名片数组列表")//将名片对象添加到名片数组列表cards.add(card);}//关闭缓冲字符输入流br.close();//关闭文件字符输入流} catch (FileNotFoundException e) {System.err.println("温馨提示:名片文件不存在!");} catch (IOException e) {e.printStackTrace();}}

Java-名片管理系统相关推荐

  1. Java——名片管理系统

    目录 任务1.确定给定日期是一年的第几天 任务 2.构建可进不可退的多级菜单系统 任务1.确定给定日期是一年的第几天 要求输入年.月.日,最好能判断用户输入的是否是合法日期 比如2022年3月31日, ...

  2. Java名片管理系统

    文章目录 (一).创建名片实体类 (二).创建名片管理类 1.创建主菜单 2.创建登陆方法 3.创建名片管理方法 4.创建添加名片方法 5.创建保存名片方法 实现可进可退的多级菜单系统 功能:添加名片 ...

  3. java web简单的网上名片管理系统

    java web简单的网上名片管理系统 实现名片的增删查改以及回收站中信息的还原与彻底删除 1.登录注册页面 <%@ page language="java" content ...

  4. Java学习:创建简单的名片管理系统

    创建简单的名片管理系统 一.创建名片实体类 二.创建名片管理类 1. 创建主菜单 2. 创建登录方法 3. 创建名片管理方法 5. 添加名片方法 6.创建保存名片方法 7.创建读取名片文件方法 8. ...

  5. Java任务项目-名片管理系统

    文章目录 任务:名片管理系统 (一)任务完整代码 (二)代码步骤解析 1.创建Card类(名片实体类),代码编写 2.创建CardManagement类(名片管理系统) 3.创建添加名片方法 4.保存 ...

  6. 名片管理系统java,[作业]JavaEE框架开发技术之名片管理系统

    这是Java EE框架开发技术一书中贯穿整本书的一个练习系统(作业). 代码一共有两个部分 第一部分是第五章的作业,完成如下 使用原生的jdbc代码进行数据库的连接 界面和书本完全相同 除部分js代码 ...

  7. java名片_javaweb名片管理系统

    在学习基于javaweb的名片管理系统项目的时候,方便日后能及时查阅,在本平台中记录一下基于javaweb的名片管理系统的开发流程.在学习时候的选用了SSM(MYECLIPSE),这个框架不论是学习还 ...

  8. 【Java面向对象编程——名片管理系统】

    文章目录 (一)编程实现 1.创建名片实体类 2.创建名片管理类 (1)创建主菜单 (2)创建登录方法 (3)创建名片管理方法 (4)创建添加名片方法 (5)创建保存名片方法 (6)创建读取名片文件方 ...

  9. JAVA名片注册_JavaWeb练习-网上名片管理系统

    实验项目名称 JavaWeb网上名片管理系统 实验目的 实现名片的增.删.改.查等操作. 实验基本原理 JSP指令.JSP动作.JSP内置对象等 主要仪器设备及耗材 Win10.Myeclipse 实 ...

  10. java web 名片管理系统

    关注微信公众号:查看菜单<项目> 1.基础功能介绍 登录.注册 所有名片 查询名片[提交.重置] 修改名片[修改] 新增名片[添加.重置] 删除名片[删除.放入回收站] 回收站[还原.删除 ...

最新文章

  1. idea整合 spring boot jsp mybatis
  2. F5 bigip.conf配置问题
  3. python自学路线-Python最佳学习路线
  4. Mybatis 学习系列文章
  5. 【PAT乙级】1071 小赌怡情 (15 分)
  6. com.sun.mail.smtp.SMTPSendFailedException: 550 Invalid User
  7. SetZOrder 无效
  8. oracle dbms 存放位置,系统统计信息的保存位置
  9. CF633C:Spy Syndrome 2——题解
  10. 泰山游记:绝顶海拔1525米
  11. paip.asp vbs代码的排版格式化
  12. vue常见的ui框架
  13. Linux命令行配置网络(有线网络,无线网络)// Debian
  14. 以太网详解(一)-MAC/PHY/MII/RMII/GMII/RGMII基本介绍
  15. 计算机硬盘驱动器检查失败,如何修复Windows 10上未显示外部硬盘驱动器/未检测到问题...
  16. 软件工程知识点总结——第一、二部分
  17. firefly-rk3288点mipi屏TV080WUM-NL0有显示无背光
  18. 程序人生 | 记一次裸辞,裸辞需三思而后行!
  19. 全智通A+常见问题汇总解答—A+配件仓库—维修领料—编辑领料单:最后一个仓库无法显示
  20. 2017 蓝桥杯决赛 C++B(2)瓷砖样式 dfs + hash去重

热门文章

  1. HTTP 请求的方式
  2. 支付宝个人收款解决方案之支付宝签约方案
  3. 深度学习小白如何看懂神经网络模型/图?
  4. 93 Three.js 使用设置normalMap创建更加细致的凹凸和褶皱
  5. 运营商,我看未必成为夕阳行业
  6. python第三周测试_第三周作业 - 作业 - 信息与计算17数31SWE - 班级博客 - 博客园...
  7. raspberry pi到手,折腾成web服务器,加小小鄙视下网通
  8. tensorflow2.X, TensorFlow Addons 版本的匹配选择
  9. Thonny+Micropython ESP32固件下载后显示没有反应
  10. TDM-GCC MINGW配置与优化算法测试函数使用