当前位置: 首页 > wzjs >正文

电子商务基础网站建设html做分模块的网站

电子商务基础网站建设,html做分模块的网站,公司网站 源码,保定网站建设设计学生管理系统 文章目录 学生管理系统1. 系统设计1.1 系统架构1.2 模块划分 2. 系统实现2.1 数据模型2.2 接口设计2.3 功能实现2.4 主程序逻辑 3. 编码实现3.1 Menu3.2 Student3.3 StudentService-API3.4 StudentAddService3.5 StudentDeleteService3.6 StudentQueryService3.7 …

学生管理系统

文章目录

  • 学生管理系统
    • 1. 系统设计
      • 1.1 系统架构
      • 1.2 模块划分
    • 2. 系统实现
      • 2.1 数据模型
      • 2.2 接口设计
      • 2.3 功能实现
      • 2.4 主程序逻辑
    • 3. 编码实现
      • 3.1 Menu
      • 3.2 Student
      • 3.3 StudentService-API
      • 3.4 StudentAddService
      • 3.5 StudentDeleteService
      • 3.6 StudentQueryService
      • 3.7 StudentUpdateService
    • 4. 结果展示
      • 4.1 UI界面
      • 4.2 添加学生功能
      • 4.3 删除学生功能
      • 4.4 修改学生功能
      • 4.5 查看学生功能

1. 系统设计

1.1 系统架构

本系统采用分层架构设计,主要分为以下三层:

  1. 数据层:由Student类表示,用于存储学生的基本信息(如学号、姓名、年龄、家庭住址等)。
  2. 服务层:由StudentService接口及其实现类组成,负责实现系统的核心功能(如添加、删除、修改和查询学生信息)。
  3. 表现层:由Menu类实现,负责与用户交互并调用服务层的功能。

1.2 模块划分

系统功能被划分为以下四个模块:

  1. 添加学生模块:负责将学生信息添加到系统中。

在这里插入图片描述

  1. 删除学生模块:根据学号删除指定的学生信息。

在这里插入图片描述

  1. 修改学生模块:根据学号修改指定学生的信息。
    在这里插入图片描述

  2. 查询学生模块:显示系统中所有学生的信息。

在这里插入图片描述

2. 系统实现

2.1 数据模型

系统的数据模型由Student类表示,其属性包括:

  • id:学生的唯一标识(学号)。
  • name:学生的姓名。
  • age:学生的年龄。
  • address:学生的家庭住址。

Student类通过封装技术,提供了对属性的访问和修改方法,确保数据的安全性和完整性。

2.2 接口设计

系统通过StudentService接口定义了核心功能,包括:

  • addStudent:添加学生信息。
  • deleteStudent:删除学生信息。
  • updateStudent:修改学生信息。
  • queryStudent:查询学生信息。
  • contains:判断学号是否已存在。
  • getIndex:根据学号获取学生在列表中的索引。

2.3 功能实现

每个功能模块通过独立的类实现StudentService接口,具体如下:

  1. 添加学生模块StudentAddService):
    • 通过循环确保学号的唯一性。
    • 将学生信息封装为Student对象并添加到列表中。
  2. 删除学生模块StudentDeleteService):
    • 根据学号查找学生信息并删除。
  3. 修改学生模块StudentUpdateService):
    • 根据学号查找学生信息并修改其属性。
  4. 查询学生模块StudentQueryService):
    • 遍历学生列表并显示所有学生信息。

2.4 主程序逻辑

StudentSystem类作为系统的入口,负责与用户交互并调用相应的功能模块。通过Scanner类获取用户输入,并根据用户选择调用StudentService接口的实现类,完成相应的功能。

3. 编码实现

3.1 Menu

import java.util.ArrayList;
import java.util.Scanner;public class Menu {public static void main(String[] args) {ArrayList<Student> list = new ArrayList<>();// 使用接口类型声明服务对象StudentService addService = new StudentAddService();StudentService deleteService = new StudentDeleteService();StudentService updateService = new StudentUpdateService();StudentService queryService = new StudentQueryService();Scanner sc = new Scanner(System.in);while (true) {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("请输入您的选择:");String choose = sc.next();switch (choose) {case "1" -> addService.addStudent(list); // 调用添加学生功能case "2" -> deleteService.deleteStudent(list); // 调用删除学生功能case "3" -> updateService.updateStudent(list); // 调用修改学生功能case "4" -> queryService.queryStudent(list); // 调用查询学生功能case "5" -> {System.out.println("退出");System.exit(0);}default -> System.out.println("没有这个选项");}}}
}

3.2 Student

public class Student {private String id;private String name;private int age;private String address;// Getters and Setterspublic 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 int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}
}

3.3 StudentService-API

import java.util.ArrayList;public interface StudentService {void addStudent(ArrayList<Student> list);void deleteStudent(ArrayList<Student> list);void updateStudent(ArrayList<Student> list);void queryStudent(ArrayList<Student> list);boolean contains(ArrayList<Student> list, String id);int getIndex(ArrayList<Student> list, String id);
}

3.4 StudentAddService

import java.util.ArrayList;
import java.util.Scanner;public class StudentAddService implements StudentService {@Overridepublic void addStudent(ArrayList<Student> list) {Student s = new Student();Scanner sc = new Scanner(System.in);String id;while (true) {System.out.println("请输入学生的id");id = sc.next();if (contains(list, id)) {System.out.println("id已经存在,请重新录入");} else {s.setId(id);break;}}System.out.println("请输入学生的姓名");s.setName(sc.next());System.out.println("请输入学生的年龄");s.setAge(sc.nextInt());System.out.println("请输入学生的家庭住址");s.setAddress(sc.next());list.add(s);System.out.println("学生信息添加成功");}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return getIndex(list, id) >= 0;}@Overridepublic int getIndex(ArrayList<Student> list, String id) {for (int i = 0; i < list.size(); i++) {if (list.get(i).getId().equals(id)) {return i;}}return -1;}// 以下方法未使用,但需要实现接口@Overridepublic void deleteStudent(ArrayList<Student> list) {}@Overridepublic void updateStudent(ArrayList<Student> list) {}@Overridepublic void queryStudent(ArrayList<Student> list) {}
}

3.5 StudentDeleteService

import java.util.ArrayList;
import java.util.Scanner;public class StudentDeleteService implements StudentService {@Overridepublic void deleteStudent(ArrayList<Student> list) {Scanner sc = new Scanner(System.in);System.out.println("请输入要删除的id");String id = sc.next();int index = getIndex(list, id);if (index >= 0) {list.remove(index);System.out.println("id为:" + id + "的学生删除成功");} else {System.out.println("id不存在,删除失败");}}@Overridepublic int getIndex(ArrayList<Student> list, String id) {for (int i = 0; i < list.size(); i++) {if (list.get(i).getId().equals(id)) {return i;}}return -1;}// 以下方法未使用,但需要实现接口@Overridepublic void addStudent(ArrayList<Student> list) {}@Overridepublic void updateStudent(ArrayList<Student> list) {}@Overridepublic void queryStudent(ArrayList<Student> list) {}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return false;}
}

3.6 StudentQueryService

import java.util.ArrayList;public class StudentQueryService implements StudentService {@Overridepublic void queryStudent(ArrayList<Student> list) {if (list.isEmpty()) {System.out.println("当前无学生信息,请添加后再查询");return;}System.out.println("id\t\t姓名\t年龄\t家庭住址");for (Student stu : list) {System.out.println(stu.getId() + "\t" + stu.getName() + "\t" + stu.getAge() + "\t" + stu.getAddress());}}// 以下方法未使用,但需要实现接口@Overridepublic void addStudent(ArrayList<Student> list) {}@Overridepublic void deleteStudent(ArrayList<Student> list) {}@Overridepublic void updateStudent(ArrayList<Student> list) {}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return false;}@Overridepublic int getIndex(ArrayList<Student> list, String id) {return 0;}
}

3.7 StudentUpdateService

import java.util.ArrayList;
import java.util.Scanner;public class StudentUpdateService implements StudentService {@Overridepublic void updateStudent(ArrayList<Student> list) {Scanner sc = new Scanner(System.in);System.out.println("请输入要修改学生的id");String id = sc.next();int index = getIndex(list, id);if (index == -1) {System.out.println("要修改的id" + id + "不存在,请重新输入");return;}Student stu = list.get(index);System.out.println("请输入要修改的学生姓名");stu.setName(sc.next());System.out.println("请输入要修改的学生年龄");stu.setAge(sc.nextInt());System.out.println("请输入要修改的学生家庭住址");stu.setAddress(sc.next());System.out.println("学生信息修改成功");}@Overridepublic int getIndex(ArrayList<Student> list, String id) {for (int i = 0; i < list.size(); i++) {if (list.get(i).getId().equals(id)) {return i;}}return -1;}// 以下方法未使用,但需要实现接口@Overridepublic void addStudent(ArrayList<Student> list) {}@Overridepublic void deleteStudent(ArrayList<Student> list) {}@Overridepublic void queryStudent(ArrayList<Student> list) {}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return false;}
}

4. 结果展示

4.1 UI界面

界面

4.2 添加学生功能

在这里插入图片描述

4.3 删除学生功能

在这里插入图片描述

4.4 修改学生功能

在这里插入图片描述

4.5 查看学生功能

在这里插入图片描述


文章转载自:

http://Gnuk5wDW.rqfzp.cn
http://cizIFo7z.rqfzp.cn
http://u7MGwvAe.rqfzp.cn
http://JOzUruUc.rqfzp.cn
http://OxoTiddr.rqfzp.cn
http://is7iZVHA.rqfzp.cn
http://yfE10xTp.rqfzp.cn
http://tSqd9AU2.rqfzp.cn
http://C423kSDv.rqfzp.cn
http://rZHPDzox.rqfzp.cn
http://A7TSvJab.rqfzp.cn
http://0sHnd2uM.rqfzp.cn
http://omQmaeNh.rqfzp.cn
http://1QVXW9qH.rqfzp.cn
http://QLDlxqeV.rqfzp.cn
http://ekh0gRgo.rqfzp.cn
http://Wm1k28UL.rqfzp.cn
http://qrM0de19.rqfzp.cn
http://esaOu1cf.rqfzp.cn
http://20nvTPd2.rqfzp.cn
http://F3SncByz.rqfzp.cn
http://GlwYhHqO.rqfzp.cn
http://Zcbfbqk1.rqfzp.cn
http://SBWs2hD8.rqfzp.cn
http://e9s71EcZ.rqfzp.cn
http://FAj3mds1.rqfzp.cn
http://4OHpmfkO.rqfzp.cn
http://ddyhX9oB.rqfzp.cn
http://lRyX64Sk.rqfzp.cn
http://HK4y2vq4.rqfzp.cn
http://www.dtcms.com/wzjs/673136.html

相关文章:

  • 做网站首页图片网站设计宁波
  • 网站开发和平台开发门户网站注意事项
  • html5做静态网站关于论文网站开发参考文献
  • 做二手房又做网站的海南旅游网站开发背景
  • 企业宣传网站怎么做优秀企业网站设计欣赏
  • 天津智能网站建设找哪家北京兼职做网站推广
  • 微信商城网站建设多少钱一级的vi设计公司
  • 韶关网站建设百度站点提交工具
  • 微信推广广告在哪里做网站推广优化排名公司
  • 网站建设活动海报营销单页网站制作
  • 重庆智能网站建设哪里有企业网站是企业在互联网上进行网络营销
  • 麻涌做网站网站开发语言怎么看
  • 宜宾金农投资建设集团网站企业邮箱怎么在手机上登录
  • 微信网站与响应式网站广东建设信息网成绩查询
  • 网站项目需求文档专做企业的p2p网站
  • 黄页推广软件网站营销单页网站
  • 多伦多网站建设多少钱企业wordpress主题
  • 做学校后台网站用什么浏览器网络广告的特征是()多选题
  • vps服务器怎么做网站私人承接做网站多少钱
  • 公司商标设计网站软件开发必备编程工具
  • 网站企业地图网址最新连接查询
  • seo刷网站网站dns设置
  • 国外做问卷赚购物券等的网站wordpress default template
  • 网站备案图标代码三明住房建设局网站
  • 朝阳区住房和城乡建设部网站高端网站建设哪里好
  • 如何制作app网站有关做美食的网站
  • 空壳网站广东深圳是一个城市吗
  • 阿里云域名怎么做网站网站开发都用什么软件
  • 英语网站新增两个栏目海报设计制作网站
  • 深圳交易平台网站开发蛋糕网站制作答辩