In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-03-13 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Development >
Share
Shulou(Shulou.com)06/01 Report--
This article mainly introduces Java how to achieve customer information management system, the article is very detailed, has a certain reference value, interested friends must read it!
I. Software design structure
For beginners, it is particularly important to understand the framework.
First of all, the software is composed of the following three modules
II. MVC design pattern
Model layer: Customer processing data
Control layer: CustomerList handles business logic
View layer: CustomerView display data
The following three points are recommended in combination with code understanding
1.Customer is an entity object that is used to encapsulate customer information
2.CustomerList is the management module of Customer objects, which internally manages a set of Customer objects with an array, and provides corresponding methods to add, modify, delete and traverse, which can be called by CustomerView.
3.CustomerView is the main module, which is responsible for menu display and user operation.
All four classes are under the same package.
3. Customerpackage org.atjinzhao.customer;public class Customer {private String name;// name private char gender;// gender private int age;// age private String phone;// phone private String email / public Customer () {} public Customer (String name, char gender, int age, String phone, String email) {this.name = name; this.gender = gender; this.age = age; this.phone = phone This.email = email;} public String getName () {return name;} public void setName (String name) {this.name = name;} public char getGender () {return gender;} public void setGender (char gender) {this.gender = gender } public int getAge () {return age;} public void setAge (int age) {this.age = age;} public String getPhone () {return phone;} public void setPhone (String phone) {this.phone = phone } public String getEmail () {return email;} public void setEmail (String email) {this.email = email;}} IV, CustomerListpackage org.atjinzhao.customer;public class CustomerList {private Customer [] customers;// customer list private int total = 0 / / record the number of saved customers / / Constructor public CustomerList (int totalCustomer) {customers = new Customer [totalCustomer] } / / method / * add customer * return:true added successfully, false: add failed * / public boolean addCustomer (Customer customer) {if (total)
< customers.length) { customers[total] = customer; total++; return true; }else return false; } /** * 修改指定索引位置上的客户信息 * @param index * @param cust * @return true:修改成功 false修改失败 */ public boolean replaceCustomer(int index,Customer cust){ if (index < 0 || index >= total) {return false;} else {customers [index] = cust; return true }} / * Delete the customer at the specified index location * @ param index * @ return true deleted successfully false deleted failed * / public boolean deleteCustomer (int index) {if (index > = 0 & & index)
< total) { for (int i = index; i < total - 1; i++) { customers[i] = customers[i+1]; } customers[--total] = null; return true; } return false; } /** * 获取所有客户信息 * @return 数组 */ public Customer[] getAllCustomers(){ //null的部分不返回 Customer[] custs = new Customer[total]; for (int i = 0; i < total; i++) { custs[i] = customers[i]; } return custs; } /** * 获取指定索引位置上的客户 */ public Customer getCustomer(int index){ if (index >= 0 & & index
< total) { return customers[index]; }else return null; } /** * 获取存储客户的数量 */ public int getTotal() { return total; } /** * 获取最大能储存客户的数量 */ public int getCustomer(){ return customers.length; }}五、CustomerViewpackage org.atjinzhao.customer;public class CustomerView { private CustomerList customerList = new CustomerList(10); public CustomerView() { Customer cust = new Customer("李明",'男',19,"12349982563","lm@gmail.com"); customerList.addCustomer(cust); } public void enterMainMenu(){ //显示主页面 boolean isFlag = true; while(isFlag){ 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(" 请选择(1-5): "); char selection = CMUtility.readMenuSelection(); switch (selection) { case '1': addNewCustomer(); break; case '2': modifyCustomer(); break; case '3': deleteCustomer(); break; case '4': listAllCustomers(); break; case '5': System.out.print("是否确认退出(Y/N):"); char isExit = CMUtility.readConfirmSelection(); if (isExit == 'Y') { isFlag = false; } } } } /** * 添加客户 */ public void addNewCustomer(){ System.out.println("-----------------添加客户-----------------"); System.out.print("姓名:"); String name = CMUtility.readString(10); System.out.print("性别:"); char gender = CMUtility.readChar(); System.out.print("年龄:"); int age = CMUtility.readInt(); System.out.print("电话:"); String phone = CMUtility.readString(13); System.out.print("邮箱:"); String email = CMUtility.readString(30); Customer customer = new Customer(name,gender,age,phone,email); boolean isSuccess = customerList.addCustomer(customer); if(isSuccess){ System.out.println("-----------------添加成功-----------------"); }else{ System.out.println("---------------目录已满,添加失败---------------"); } } /** * 修改客户 */ public void modifyCustomer(){ System.out.println("-----------------修改客户-----------------"); Customer cust; int num; for (;;) { System.out.print("请输入要修改的客户序号(输入-1退出):"); num = CMUtility.readInt(); if (num == -1) { return; } cust = customerList.getCustomer(num - 1); if (cust == null) { System.out.println("无法找到指定客户!"); } else { break; } } System.out.println("姓名("+cust.getName()+"):"); String name = CMUtility.readString(10, cust.getName()); System.out.println("性别("+cust.getGender()+"):"); char gender = CMUtility.readChar( cust.getGender()); System.out.println("年龄("+cust.getAge()+"):"); int age = CMUtility.readInt(cust.getAge()); System.out.println("电话("+cust.getPhone()+"):"); String tel = CMUtility.readString(11, cust.getPhone()); System.out.println("邮箱("+cust.getEmail()+"):"); String email = CMUtility.readString(15, cust.getEmail()); Customer newCust = new Customer(name,gender,age,tel,email); boolean isReplaced = customerList.replaceCustomer(num - 1, newCust); if (isReplaced) { System.out.println("-----------------修 改 成 功----------------- "); } else { System.out.println("-----------------修 改 失 败----------------- "); } } /** * 删除客户 */ public void deleteCustomer(){ System.out.println("-----------------删除客户-----------------"); Customer cust; int index; for (;;) { System.out.print("请输入要删除的客户序号(输入-1退出):"); index = CMUtility.readInt(); if (index == -1) { return; } cust = customerList.getCustomer(index - 1); if (cust == null) { System.out.println("无法找到客户!"); } else { break; } } System.out.print("是否确认删除(Y/N):"); char isDelete = CMUtility.readConfirmSelection(); if (isDelete == 'Y') { boolean deleteSuccess = customerList.deleteCustomer(index - 1); if (deleteSuccess) { System.out.println("-----------------删除成功-----------------"); } else { System.out.println("-----------------删除失败-----------------"); } }else{ return; } } /** * 显示客户列表的操作 */ public void listAllCustomers(){ System.out.println("-------------------客 户 列 表------------------"); int total = customerList.getTotal(); if (total == 0) { System.out.println("没有客户记录!"); }else { System.out.println("编号 姓名 性别 年龄 电话 邮箱"); Customer[] custList = customerList.getAllCustomers(); for (int i = 0; i < total; i++) { System.out.println(i+1 + " " + custList[i].getName()+ " " + custList[i].getGender()+" " + custList[i].getAge()+ " " + custList[i].getPhone()+" " + custList[i].getEmail()+" "); } } System.out.println("-----------------客户列表完成-----------------"); } public static void main(String[] args) { CustomerView view = new CustomerView(); view.enterMainMenu(); } }六、CMUtilitypackage org.atjinzhao.customer;import java.util.*;public class CMUtility { public static void main(String[] args) { //System.out.println(readMenuSelection()); } private static Scanner scanner = new Scanner(System.in); /** * 用于界面菜单的选择。该方法读取键盘用户键入的'1'-'5'的任意字符,方法返回。 * */ public static char readMenuSelection() { // 获取功能选择 char c; for (;;) { String str = readKeyBoard(1, false); c = str.charAt(0); if (c != '1' && c != '2' && c != '3' && c != '4' && c != '5') { System.out.println("选择错误,请重新输入:"); } else break; } return c; } /** * 从键盘读取一个字符,并将其作为方法的返回值。 * 获取性别 */ public static char readChar(){ String str = readKeyBoard(1,false); return str.charAt(0); } /** *从键盘读取一个字符,并将其作为方法的返回值。 *如果用户不输入字符而回车,方法将以defaultValue 作为返回值。 * */ public static char readChar(char defaultValue){ String str = readKeyBoard(1,true); return (str.length()==0)? defaultValue : str.charAt(0); } /** * 从键盘读取一个长度不超过2位的整数,并将其作为方法的返回值。 * 获取年龄 */ public static int readInt(){ int n; for(;;){ String str = readKeyBoard(2,false); try{ n = Integer.parseInt(str); break; }catch (NumberFormatException e) { System.out.print("数字输入错误,请重新输入:"); } } return n; } /** *从键盘读取一个字符,并将其作为方法的返回值。 *如果用户不输入字符而回车,方法将以defaultValue 作为返回值。 */ public static int readInt(int defaultValue){ //修改年龄信息时,不输入信息直接回车 int n; for (; ; ) { String str = readKeyBoard(2,true); if (str.equals("")) { return defaultValue; } try{ n = Integer.parseInt(str); break; }catch (NumberFormatException e) { System.out.print("数字输入错误,请重新输入:"); } } return n; } /** * 从键盘读取一个长度不超过limit的字符串,并将其作为方法的返回值。 */ public static String readString(int limit){ return readKeyBoard(limit,false); } /** * 从键盘读取一个长度不超过limit的字符串,并将其作为方法的返回值。 * 如果用户不输入字符而直接回车,方法将以defaultVaue作为返回值。 */ public static String readString(int limit,String defaultValue){ //修改姓名、电话、邮箱时,不输入信息直接回车 String str = readKeyBoard(limit,true); return str.equals("") ? defaultValue : str; } /** * 用于确认选择的输入。该方法从键盘读取'Y'或'N',并将其作为方法的返回值。 */ public static char readConfirmSelection(){ //获取确认的输入 char c; for( ; ; ){ String str = readKeyBoard(1,false).toUpperCase(); c = str.charAt(0); if (c=='Y' || c=='N') { break; } else { System.out.print("选择错误,请重新输入: "); } } return c; } private static String readKeyBoard(int limit,boolean blankReturn){ String line = ""; while (scanner.hasNextLine()) { line = scanner.nextLine(); if (line.length() == 0) { if (blankReturn) return line; else continue; } if (line.length() < 1 || line.length() >Limit) {System.out.println ("input length (not greater than" + limit + ") error, please re-enter"); continue;} break;} return line }} above are all the contents of the article "how to implement customer Information Management system in Java". Thank you for reading! Hope to share the content to help you, more related knowledge, welcome to follow the industry information channel!
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.