




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1.1 命令方式的蓝梦学院选课系统项目完整实现实例(第3部分)1.1.1 系统编程学核心业务功能实现编程学生课程信息管理类中的相关方法package com.px1987.course.service.imple;import java.util.iterator;import java.util.scanner;import java.util.set;import com.px1987.course.dao.selectcourseresultpo;import com.px1987.course.dao.database;import com.px1987.course.dao.stud
2、entinfopo;import er.coursemanageinter;public class coursemanageimple implements coursemanageinter public coursemanageimple() overridepublic void addonecourse() /* * 识别选课的学生是否登录-如果没有登录,显示相关的错误并退出选课的过程 */if(database.loginedstudentinfopo = null)system.out.println(你没有登录本系统,将
3、不能进行选课!n);return;/* * 如果登录过并且登录成功,显示出相关的课程信息并进行选择包装键盘和创建键盘输入 */scanner currentkeyboard =null;currentkeyboard=new scanner(system.in);/* * 提示输入课程相关的信息,并获得所输入的课程相关信息 */system.out.println(课程名称:);string coursename = currentkeyboard.nextline();/* * 识别是否存在重复选课首先获得当前正在选课的学生信息(从session缓存中获得)以及所选的各个课程信息; * 如果
4、存在重复的选择,则显示错误信息并退出保存的过程 */studentinfopo currentselectedcoursestudentpo=database.loginedstudentinfopo;if(currentselectedcoursestudentpo.allselectedcourseinfo.containskey(coursename)system.out.println(coursename+课程已经选择了,不允许重复选择该课程!);return;/* * 如果不存在重复的选择,则继续显示课程的其它信息并输入这些信息 */system.out.println(授课教师:
5、);string teachername = currentkeyboard.nextline();system.out.println(开课时间:);string coursetime = currentkeyboard.nextline();system.out.println(课程学分:);int coursecreit= currentkeyboard.nextint();/* * 将所获得学生所选择的各个课程信息包装(转换)到一个课程信息实体对象 */selectcourseresultpo selectedonecoursepo=new selectcourseresultpo()
6、;selectedonecoursepo.setcoursename(coursename);selectedonecoursepo.setteachername(teachername);selectedonecoursepo.setcoursetime(coursetime);selectedonecoursepo.setcoursecreit(byte)coursecreit);/* * 保存该学生的选课结果到该学生的选课结果列表中 */currentselectedcoursestudentpo.allselectedcourseinfo.put(coursename, selecte
7、donecoursepo);system.out.println(coursename+课程已经选择完毕并添加到已选课程的列表中,请继续选其它课程!);overridepublic void printallselectedcourse() /* * 识别退选课的学生是否登录-如果没有登录,显示相关的错误并退出退选课的过程 */if(database.loginedstudentinfopo = null)system.out.println(你没有登录本系统,将不能打印已选课程清单!n);return;/* * 再识别是否选过课程(也就是识别选课清单是否为空)首先从缓存中获得当前退选课的学生
8、 */studentinfopo currentremovedcoursestudentpo=database.loginedstudentinfopo;if(currentremovedcoursestudentpo.allselectedcourseinfo.isempty()system.out.println(你没有选过任何的课程,将不能打印已选课程清单!n);return;system.out.println(课程名称+t+ 授课教师+tt+上课时间+t+课程学分);/* * 从缓存中获得存储已选的所有课程的集合 */map selectedcoursemap=currentremo
9、vedcoursestudentpo.allselectedcourseinfo;set allcourenamekey=selectedcoursemap.keyset();iterator allcoursename=allcourenamekey.iterator();while(allcoursename.hasnext()string onecoursename=(string)allcoursename.next();/* * 获得所选的某门课程的实际体对象 */selectcourseresultpo selectedonecoursepo=(selectcourseresult
10、po)selectedcoursemap.get(onecoursename);/* * 以行、列的表格形式显示输出所有的课程信息 */system.out.println(selectedonecoursepo.getcoursename()+t+selectedonecoursepo.getteachername()+tt+selectedonecoursepo.getcoursetime()+t+selectedonecoursepo.getcoursecreit();overridepublic void removeonecourse() /* * 识别退选课的学生是否登录-如果没有
11、登录,显示相关的错误并退出退选课的过程 */if(database.loginedstudentinfopo = null)system.out.println(你没有登录本系统,将不能进行退选课!n);return;/* * 再识别是否选过课程(也就是识别选课清单是否为空)首先从缓存中获得当前退选课的学生 */studentinfopo currentremovedcoursestudentpo=database.loginedstudentinfopo;if(currentremovedcoursestudentpo.allselectedcourseinfo.isempty()syste
12、m.out.println(你没有选过任何的课程,将不能进行退选课!n);return;/* * 显示退选的课程信息清单界面,并等待该学生选择所要退选的课程,最后再获得所输入的退选课程的名称 */scanner currentkeyboard =null;currentkeyboard=new scanner(system.in);system.out.println(课程名称:);string coursename = currentkeyboard.nextline();/* * 识别所选择的待退选的课程是否已经选过,如果没有选过则显示错误信息并退出退选课程的过程 */if(!currentremovedcoursestudentpo.allselectedcourseinfo. containskey(coursename)system.out.println(你没有选过+coursename+课程,将不能对该课程退选!n);return;/* * 如果所选择的待退选的课程是否已经选过,则删除该课程,从而达到退选的效果 */currentremovedcoursestudentpo.allselectedcoursei
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC TR 63309:2025 EN Active fibres – Characteristics and measurement methods – Guidance
- 2025至2030中国电镀表配件行业深度研究及发展前景投资评估分析
- 2025至2030中国电子商务食品行业深度研究及发展前景投资评估分析
- 2025至2030中国电动尾门行业产业运行态势及投资规划深度研究报告
- 2025至2030中国玛瑙饰品行业市场占有率及投资前景评估规划报告
- 技术培训推动教师职业发展的重要动力
- 幼儿园营养性疾病知识培训
- 智慧教育大数据驱动的教学效率变革
- 探索不同国家在线教育平台的创新实践
- 教育中的心理学技巧激发学生潜能的实践
- 【MOOC】教育研究方法-浙江大学 中国大学慕课MOOC答案
- 《回归分析》课件
- 心脏手术围手术期
- 餐车经营食品安全应急预案
- DB43T 876.11-2017 高标准农田建设 第11部分:耕地地力评定技术规范
- 2024新版(外研版三起孙有中)三年级英语上册单词带音标
- 2024至2030年中国汉白玉石雕数据监测研究报告
- 三年级下册混合计算题100道及答案
- DB12T 998-2020 殡葬服务机构消毒卫生规范
- 广东省广州市五校2023-2024学年高一下学期期末联考化学试卷
- 2024年天津高考数学真题试题(原卷版+含解析)
评论
0/150
提交评论