完成学生信息添加,修改和删除功能。
思路:
图片:5_查看学生思路图.png

代码:
StudentController[客服类中]
//查找学生
private void findAllStudent() {//1.方法内部创建StudentService业务员对象//2.调用业务员对象中的findAllStudent方法,得到学生数组Student[] stu_s = studentService.findAllStudent();//3.不为null,遍历数组,打印学生信息//4.判断数组地址是否为null,是的话,提示查无信息if(stu_s != null){System.out.println("学号\t\t姓名\t年龄\t生日");for (int i = 0; i if(stu_s[i] != null){System.out.println(stu_s[i].getId()+"\t\t"+stu_s[i].getName()+"\t"+stu_s[i].getAge()+"\t"+stu_s[i].getBirthday());}}}else{System.out.println("查无信息");}
}
StudentService[业务员]
public Student[] findAllStudent() {//1.从StudentDao中获取存储学生对象的数组,调用内部findAllStudent方法.Student[] stu_s = studentDao.findAllStudent();//2.判断学生数组中是否有数据 有:返回数组地址 无:返回nullfor (int i = 0; i < stu_s.length ; i++) {if(stu_s[i] != null){ //只有有一个学生信息就表示有return stu_s;}}return null;}
StudentDao[库管]
//1.直接返回全部学生对象
public Student[] findAll() {return students;
}
思路:
6_修改学生思路图.png

代码:
StudentController[客服类中]
public void updateStudent() {String updId;//2.调用StudentService业务员对象中的isExists方法,判断学号是否存在,不存在则继续录入while (true) {//1. 接收用户要修改的学生idSystem.out.println("请输入学生id");updId= sc.next();boolean flag = studentService.isExists(updId);if(flag){break;}else{System.out.println("学生学号,不存在请重输入");}}//3.录入新的学生信息,封装为学生对象System.out.println("请输入学号:");String stuId= sc.next();System.out.println("请输入姓名:");String name= sc.next();System.out.println("请输入年龄:");String age= sc.next();System.out.println("请输入生日:");String birthday= sc.next();Student newStu = new Student();newStu.setId(stuId);newStu.setAge(age);newStu.setName(name);newStu.setBirthday(birthday);//4. 调用StudentService业务员对象中的updateStudent方法,修改学生,并提示修改成功studentService.updateStudent(updId,newStu);}
StudentService[业务员]
public void updateStudent(String updId, Student newStu) {// 调用StudentDao中的updateStudent方法,将参数传入。studentDao.updateStudent( updId, newStu);}
StudentDao[库管]
public void updateStudent(String updId, Student newStu) {//1.查找学生id,在数组中所在的索引位置int index = getIndex( updId);//2.将该索引位置的学生对象,使用新的学生对象进行替换students[index] = newStu; //因为前面判断过是否存在,所有到这边肯定是存在的}//查找学生id,在数组中所在的索引位置public int getIndex(String stuId){int index = -1;for (int i = 0; i if(students[i]!=null && stuId.equals(students[i].getId())){index = i;}}return index;}
思路:
7_删除学生思路图.png

代码:
StudentController[客服类中]
public void deleteStudentById() {String delId;//2.调用StudentService业务员对象中的isExists方法,判断学号是否存在,不存在则继续录入while (true) {//1.接收用户要删除的学生idSystem.out.println("请输入学生id");delId= sc.next();boolean flag = studentService.isExists(delId);if(flag){break;}else{System.out.println("学生学号,不存在请重输入");}}//3.调用StudentService业务员对象中的deleteStudentById方法,根据id删除学生,并提示删除成功studentService.deleteStudentById(delId);System.out.println("删除成功");
}
StudentService[业务员]
public void deleteStudentById(String delId) {// 调用StudentDao中的deleteStudentById方法删除学生studentDao.deleteStudentById( delId);}
StudentDao[库管]
public void deleteStudentById(String delId) {
//1.查找学生id,在数组中所在的索引位置
int index = getIndex(delId);
//2.将该索引位置的学生对象,使用null进行替换
students[index] = null;
}
功能和需求学生菜单一样




操作有问题请查看源码下载地址
http://www.gxcode.top/code
