package edu.info.manager.controller;
import edu.info.manager.domain.Teacher;
import edu.info.manager.service.TeacherService;
import java.util.Scanner;
public class TeacherController {
private Scanner sc = new Scanner(System.in);
private TeacherService teacherService = new TeacherService();
public void start() {
while (true) {
System.out.println("-----欢迎来到老师管理系统-----");
System.out.println("请输入你的选择:1.添加老师 2.删除老师 3.修改老师 4.查看老师 5.退出");
int choice = sc.nextInt();
switch (choice) {
case 1:
//System.out.println("添加老师");
addTeacher();
break;
case 2:
//System.out.println("删除老师");
deleteTeacherById();
break;
case 3:
//System.out.println("修改老师");
updateTeacher();
break;
case 4:
//System.out.println("查看老师");
findAllTeacher();
break;
case 5:
System.out.println("感谢你使用老师管理系统");
return;
default:
System.out.println("你的输入有误,请重新输入");
}
}
}
public void updateTeacher() {
String id = inputTeacherId();
Teacher newTeacher = inputTeacherInfo(id);
//调用业务员的修改方法
teacherService.updateTeacher(id, newTeacher);
System.out.println("修改成功");
}
public void deleteTeacherById() {
String id = inputTeacherId();
//2.调用业务员中的删除方法
teacherService.deleteTeacherById(id);
//3.提示删除成功
System.out.println("删除成功");
}
public void findAllTeacher() {
//1.从业务员中,获取老师对象数组
Teacher[] teachers = teacherService.findAllTeacher();
//2.判断数组中是否有元素
if (teachers == null) {
System.out.println("查无信息,请添加后重试");
return;
}
//3.遍历数组,取出元素,打印在控制台
System.out.println("学号\t\t姓名\t年龄\t生日");
for (int i = 0; i < teachers.length; i++) {
Teacher t = teachers[i];
if (t != null) {
System.out.println(t.getId() + "\t" + t.getName() + "\t" + t.getAge() + "\t\t" + t.getBirthaday());
}
}
}
public void addTeacher() {
String id;
while (true) {
//接收不存在的老师id
System.out.println("请输入老师id");
id = sc.next();
//2.判读id是否存在
boolean exists = teacherService.isExists(id);
if (exists) {
System.out.println("id已被占用,请重新输入");
} else {
break;
}
}
Teacher t = inputTeacherInfo(id);
//5.将封装好的老师对象传递给TeacherService,继续王城添加操作
boolean result = teacherService.addTeacher(t);
if (result) {
System.out.println("添加成功");
} else {
System.out.println("添加失败");
}
}
//录入老师id
public String inputTeacherId() {
String id;
while (true) {
System.out.println("请输入老师的id");
id = sc.next();
boolean exists = teacherService.isExists(id);
if (!exists) {
System.out.println("您输入的id不存在,请重新输入");
} else {
break;
}
}
return id;
}
//录入老师信息,封装为老师对象
public Teacher inputTeacherInfo(String id) {
System.out.println("请输入老师的姓名");
String name = sc.next();
System.out.println("请输入老师的年龄");
String age = sc.next();
System.out.println("请输入老师的生日");
String birthday = sc.next();
//4.封装为老师对象
Teacher t = new Teacher();
t.setId(id);
t.setName(name);
t.setAge(age);
t.setBirthaday(birthday);
return t;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
管理系统,师生管理系统 java实现
共50个文件
class:24个
java:15个
xml:6个
需积分: 0 0 下载量 117 浏览量
2023-07-08
10:32:07
上传
评论 1
收藏 48KB ZIP 举报
温馨提示
用Java写的师生管理系统。文件为多文件操作,各个部分分步操作,修改起来特别方便。其中还有丰富的注释。便于理解和学习。代码格式美观,可读性较高,拓展性强。有对接口和。设计模式的应用。酷狗文件之间相互连接。交互使用。提高了代码的复用性,降低了代码的冗余度。其中infoManagerEntry是主方法,通过infoManagerEntry对整个代码进行操作。主要设计学生的增删改查,以及老师的增删改查。对存储上用的是集合,相对于数组来说。空间是随着存储的数量而变化,就如同链表一样,保证了空间的充分利用,在时间复杂度上,也会因为集合而大大降低时间复杂度。这个管理系统也是跟着黑马的课程自己敲的,所以说bug相对较少。而且也是。经过长时间的修改。整体上来说代码质量比较高。 这个资源,我也设置成免费的。可以下载下来看一看,无论你是管理系统还是其他项目,这套代码中都运用了相对应的技术,可以下载下来看一看,可能会对你有所帮助。如果对你有帮助,那我也就太高兴了。
资源推荐
资源详情
资源评论
收起资源包目录
管理系统.zip (50个子文件)
管理系统
edu
src
edu
info
manager
entry
infoManagerEntry.java 1KB
controller
OtherStudentController.java 854B
BaseStudentController.java 4KB
TeacherController.java 5KB
StudentController.java 951B
dao
TeacherDao.java 2KB
StudentDao.java 1KB
BaseStudentDao.java 428B
OtherStudentDao.java 1KB
factory
StudentDaoFactory.java 262B
service
StudentService.java 2KB
TeacherService.java 1KB
domain
Teacher.java 272B
Student.java 236B
Person.java 980B
out
production
edu
edu
info
manager
entry
infoManagerEntry.class 1KB
controller
StudentController.class 4KB
TeacherController.class 4KB
dao
TeacherDao.class 2KB
StudentDao.class 2KB
service
StudentService.class 2KB
TeacherService.class 2KB
domain
Student.class 1KB
Teacher.class 1KB
.idea
workspace.xml 3KB
misc.xml 276B
modules.xml 253B
.gitignore 50B
.gitignore 344B
edu.iml 433B
out
production
管理系统
edu
info
manager
entry
infoManagerEntry.class 1KB
controller
StudentController.class 1KB
TeacherController.class 4KB
BaseStudentController.class 4KB
OtherStudentController.class 1KB
dao
BaseStudentDao.class 430B
TeacherDao.class 2KB
StudentDao.class 2KB
OtherStudentDao.class 2KB
factory
StudentDaoFactory.class 477B
service
StudentService.class 2KB
TeacherService.class 2KB
domain
Person.class 1KB
Student.class 561B
Teacher.class 561B
.idea
workspace.xml 2KB
misc.xml 238B
modules.xml 271B
.gitignore 50B
管理系统.iml 437B
共 50 条
- 1
资源评论
学编程的小程
- 粉丝: 1w+
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 111111111111111111
- Screenshot_2024-04-30-21-47-24-26.jpg
- Cpp1.cpp1111111111
- 利用ERP流程操作的整个订单流程.ppt
- 最新二开版本源码博客论坛源码,UI很漂亮,可切换皮肤界面.rar
- ModStartBlog现代化个人博客系统 v5.2.0源码.rar
- 带posix库的mingw编译器
- SoraAI是一款功能强大的AI助手,由OpenAI开发,以其出色的语音识别技术、广泛的知识库和高度的人工智能特性而备受瞩目
- Thinkphp开发大气响应式个人博客青春博客网站源码.rar
- 最新PHP博客网站程序源码 ThinkPHP.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功