案例驱动:为了代码的复用性、可读性、维护性
分类思想:分工协作,专人干专事。
分包思想:对于不同功能的文件,可以放在不同的包下进行管理,包本质意义就是文件夹
信息管理系统分类
Student类:标准学生类,封装键盘录入学生信息。
StudentDao类:Dao:用于访问存储数据的数组或集合
StudentService类:用来进行业务逻辑的处理
StudentController类:和用户打交道(接收用户需求,采集用户信息,打印数据到控制台)
Entry类:进入界面进行操作的入口,带有主方法
学生添加功能实现:
StudentController类:1.方法中接受用户输入的信息2.将学生信息封装成学生对象传递给StudentService。
StudentService类:1.将接收到的学生对象传递给StudentDao2.接受方法的boolean返回值,将结果返还给StudentController
StudentDao类:1.创建Student学生,数组长度为5。2.将接收到的学生对象添加到数组中3.返回是否添加成功的boolean值
判断学生学号是否存在:
StudentController:1.接到学生id后,判断该id在数组中是否存在,这种判断属于业务处理,2.去指派StudentService中判断id是否存在,调用内部isExists方法,该方法返回boolean类型
true:存在,false:不存在3.接收学员id和判断的代码,使用无限循环包裹,直到输入不存在的id,结束循环
StudentService:isExists方法1.从StudentDao中获取存储学生对象的数组3.返回true或false结果
StudentDao:findAllStudent方法将学生数组返回即可
查询学生功能实现:
StudentController:1.编写findAllStudent方法2.方法内部创建StudentService业务员对象3.调用业务员对象中的findAllStudent方法,得到学生数组4.判断数组地址是否为null,是的话,提示查无信息
StudentService:findAllStudent方法1.从StudentDao中获取存储对象的数组调用内部findAllStudent方法2.判断学生数组中是否有数组,有:返回数组地址 无:返回null
StudentDao:findAllStudent方法将学生数组返回即可
删除学生功能实现:
StudentController:1.编写deleteStudentById方法2.接受用户要删除的学生id3.调用StudentService对象中的isExists方法,判断学号是否存在,不存在则继续录入4.调用StudentService对象中的deleteStudentById方法,根据id删除学生,并提示删除成功
StudentService:调用StudentDao中的deleteStudentById方法删除学生
StudentDao:deleteStudentById方法:1.查找学生id,在数组中所在的索引位置2.将该索引位置的对象,使用null进行替换
修改学生功能实现:
StudentController:1.编写updateStudent方法2.接收用户要修改的学生id3.调用StudentService业务员对象中的isExists方法,判断学号是否存在,不存在则继续录入4.录入新的学生信息,封装为学生对象5.调用StudentService对象中的updateStudent方法,修改学生,并提示修改成功
StudentService:updateStudent方法,该方法需要接收两个参数(1)学生id(2)新的学生对象,调用StudentDao中的updateStudent方法,将参数传入
StudentDao:updateStudent方法(1)查找学生id,在数组中所在的索引位置(2)将该索引位置的学生对象,使用新的学生对象进行替换
添加老师功能实现:
TeacherController:addTeacher()1.接受不存在的id2.接收用户信息,封装为老师对象3.将老师对象传递给TeacherService,并接收boolean类型返回值4.根据返回值,在控制台打印成功/失败
TeacherService:1.将接受到的老师对象,传递给TeacherDao2.接收方法的boolean返回值,将结果返还给TeacherController
TeacherDao:1.创建Teacher老师,数组长度为5。2.将接收到的老师对象添加到数组中3.返回值是否添加成功的boolean类型值
查询老师功能实现:
TeacherController:1.编写findAllTeacher方法2.方法内部创建TeacherService对象3.调用TeacherService对象中的findAllTeacher方法,得到老师数组4.判断数组地址是否为null,是的话,提示查无信息5.不为null,遍历数组,打印老师信息
TeacherService:findAllTeacher方法1.从TeacherDao中获取存储学生对象的数组调用内部findAllTeacher方法2.判断老师数组中是否有数据,有:返回数组地址,无:返回null
TeacherDao:findAllTeacher方法将老师数组返回即可
删除老师功能实现:
TeacherController:1.编写deleteTeacherById方法2.接收用户要删除的老师id3.调用TeacherService对象中的isExists方法,判断id是否存在,不存在则继续录入4.调用TeacherService对象中的deleteStudentById方法,根据id删除老师,并提示删除成功
TeacherService:deleteTeacherById方法:调用TeacherDao中的deleteTeacherById方法删除老师
TeacherDao:deleteTeacherById方法1.查找老师id,在数组中所在的索引位置2.将该索引位置的老师对象,使用null进行替换
修改老师功能实现:
TeacherController:1.编写updateTeacher方法2.接收用户要修改的老师id3.调用TeacherService业务员对象中的isExists方法,判断id是否存在,不存在则继续录入4.录入新的老师信息,封装为老师对象5.调用TeacherService对象中的updateTeacher方法,修改老师,并提示修改成功