上周一进行了java分级测试,但是完成的不太好,先看题目:
石家庄铁道大学选课管理系统
1、项目需求:
本项目所开发的学生选课系统完成学校对学生的选课信息的统计与管理,减少数据漏掉的情况,同时也节约人力、物力和财力。告别以往的人工统计。
2.系统要求与功能设计
2.1 页面要求
(1)能够在Tomcat服务器中正确部署,并通过浏览器查看;
(2)网站页面整体风格统一;
(3)首页(登录页)要求实现不同用户登录后,进入的功能页不相同。
(4)教师功能页:有添加课程、修改个人信息、浏览选课学生信息三个模块。
(5)学生功能页:有修改个人信息、浏览课程信息、选课三个功能模块。
(5)管理员功能页:有添加教师信息、添加学生信息两个模块。
2.2功能要求:
(1)添加教师信息:管理员可以添加教师基本信息,教师基本信息包括:教师工号(八位数字组成,例如02000081)、教师姓名、教师性别、教师所在学院、职称(教授、副教授、讲师、助教)组成;
(2)添加学生信息:管理可以添加学生基本信息,学生基本信息包括学号(八位数字组成,例如20180052)、学生姓名、学生性别、所在班级、所属专业组成;
(3)添加课程信息:教师登陆后,可以添加自己任职的课程基本信息,课程基本信息包括:课程编号(六位数字组成,例如050013),课程名称、选课人数、任课教师(任课教师不需录入,那位教师填写课程信息,那位教师就是任课教师);
(4)修改个人信息:教师或学生登陆后可以修改个人信息,但教师工号或学号不能修改,另外教师或学生只能修改自己的信息,无法看到或修改其他学生或教师的基本信息。
(5)浏览课程信息:学生登陆后可以看到所有课程的列表信息,点击课程名称可以查看课程的详细信息,包括已选课人数;点击教师名称可以查看教师的详细信息。
(6)选课:进入选课页面,课程信息列表显示所有选课人数未达到课程设置的选课人数上限,点击课程名称可以看到课程详细信息,点击课程详细信息页面的“选课”按钮,可以实现选课功能。
(7)浏览选课学生信息:教师进入该页面后,可以看到自己设置的课程信息列表,点击课程名称,可以看到,选择该课程的所有学生基本信息列表。
(8)登陆功能:管理员、教师、学生登陆后可以看到不同的功能页面,教师或学生登陆后只能看到自己的相关信息,不同教师、不同学生登陆后无法查看其他人的信息。(要求至少创建两个教师用户、十个学生用户演示选课过程)
3数据库设计:
要求实现课程基本信息表、教师基本信息表、学生基本信息表、选课基本信息表。(提示:选课基本信息包括课程编号、教师编号、学号等基本信息)
4、WEB发布:
要求可以实现在浏览器直接访问系统。
评分等级分类:
A级:起评分90分,要求完全按照要求实现全部功能。(结合以前成绩综合考量,确认为免试);
B级:起评分80分,最高分不超过89分,可以完成选课的基本流程,实现教师、学生、课程基本信息添加、选课功能实现,剩余功能有两个以下(包括两个)未实现;
C级:起评分70分,最高分不超过79分,可以实现教师、学生、课程基本信息添加、修改个人信息,无法实现选课功能;
D级:起评分60分,最高分不超过69分,可以完成教师、学生、课程两个以上(包括两个)基本信息添加;
E级:无法达到上述级别要求。
感受:
1.发现自己做项目的时候还是缺少明确的思路,以为自己没看完题目就直接做可以快点做完,结果却发现思路不明确,你需要改的有很多,例如,没有注意登录,所以在建bean类的时候还需要单加一个password然后再去自动生成get set方法,有参构造,这样相对于直接想清楚再敲要浪费很多时间。
2.应该先画一个思维图,有什么功能,有什么参与者,每个参与者能进行什么从挨揍,这样写的时候也很简单明了,明白自己要做什么,不至于慌乱。
3.自己写的程序越多,遇到的问题越多,对问题、程序的理解也就越深刻。例如bean层就是用来封装数据,包含数据的set get方法,有参构造方法。dao层就是对数据的操作的集合,例如增加学生,增加教师,添加课程等的操作方法都需要需要封装在里面。Util层就是一些工具类,对数据库的连接和关闭等。servlet层是跳转的类,用来从网页上接受数据,然后调用dao层方法来完成,而交互方式也有很多种,可以向通过链接向servlet传一个参数指明要执行哪个方法,然后再方法里写执行完方法要跳转到哪个界面(<a href="servlet?method=xxx&xx=xxx">xxxx</a>),或者通过表单的action属性来指定数据要提交到servlet的哪个方法(<form action="servlet?method=xxx"> xxxxx</form>),在servlet里面写一个判断,传过来什么参数执行什么方法,这样就可以完成跳转
4.自己写代码的速度还需要加强,否则期末考试量多的任务无法完成。
5.要寻找简单的方法来完成自己的目标,这样才可能尽可能的节省时间。
6.要熟悉的应用各种快捷键,争取不用鼠标,这样也会加大自己的开发项目的效率
原文地址:https://www.cnblogs.com/tkg1314/p/12076167.html