收藏 分享(赏)

软件工程专业——学生选课系统设计.doc

上传人:HR专家 文档编号:11495432 上传时间:2020-05-13 格式:DOC 页数:16 大小:802.01KB
下载 相关 举报
软件工程专业——学生选课系统设计.doc_第1页
第1页 / 共16页
软件工程专业——学生选课系统设计.doc_第2页
第2页 / 共16页
软件工程专业——学生选课系统设计.doc_第3页
第3页 / 共16页
软件工程专业——学生选课系统设计.doc_第4页
第4页 / 共16页
软件工程专业——学生选课系统设计.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、 学生选课系统实验报告 项目名称:学生选课系统 姓名:学号:班级:指导老师:一 课程设计的目的与要求通过软件开发的实战训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计和综合分析,解决问题的能力。具体如下:学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;1. 学习使用MyEclipse开发工具的使用。2. 进一步加强和提高软件工程文档的编写能力;3. 培养协作能力和团队精神。一 设计正文1. 概述1.1 课程题目:学生选课系统1.2系统的主要目标: 本系统的目标是实现选课系统需所需的各种基本功能,包括学生选课,教师查

2、看选修的课程,提交课程成绩功能以及管理添加学生,维护学生的信息,成绩管理,添加教师,维护教师的信息。维护选修课程,查看学生的信息,查看教师的信息,查看课程的信息。更新学生,老师,和课程的信息。包括增加修改删除查找。 1.3 系统的开发环境及运行环境 操作系统:windows 建模工具 数据库系统:sqlserver2005 开发工具:MyEclipse8.6 WEB服务器:Tomcat2. 系统的需求分析学生选课系统的主要满足来自三个方面的需求,这三个方面分别是学生用户,教师用户和管理员用户,也即是三类用户角色。(1) 学生用户是主要的需求者,主要的需求功能是查询可选课程,查看自己的选课情况及

3、进行选课。(2) 教师用户主要需求功能是查看自己所教授的课程,课程有哪些学生选修,以及利用本系统提交学生的成绩(3) 管理员用户的功能需求较为复杂,包括对学生的信息,教师的信息,课程的信息进行管理。在学生信息管理子模块中实现对学生的信息的添加,修改,删除操作。还可以输入查询条件进行查询操作。在教室管理模块中实现对教师信息的添加,修改删除,查询操作。在课程管理的子模块中实现对课程的添加,修改,删除操作,查询操作。 本系统将管理员用户,教师用户,学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看,维护系统中的所有信息,如添加学生,添加课程,修改课程的信息等;让教师拥有查看自己开设的

4、课程的信息,以及提交所开设课程的成绩的权限;让学生拥有选课的权限。 2.1 系统用例图 3. 系统的总体设计 二 管理员模块:1.对老师的操作:1)增加老师2)根据教师号码修改教师信息3)根据教师号码删除教师信息4)根据教师号码查询教师的信息5)查询所有教师的信息2.对学生的操作1)增加学生2)根据学号修改学生信息3)根据学号删除学生信息4)根据学号查询学生信息5)查询所有学生信息3.对课程的操作1)增加课程2)根据课程号修改课程信息3)根据课程号删除课程的信息4根据课程号查询课程的信息5)查询所有课程二学生模块1.登录系统2.选课(只能选修学分小于等于8分的课程)3.查询所有已选的课4.退可

5、操作5.查询自身信息6.查询所有所选课程的成绩7.退出系统三老师模块1.登录系统2.查询所有已选自带课程的学生信息3.输入相应科目成绩4.查询自身信息四系统的数据字典:教师号T-teacher字段名字段类型字段长度是否为空是否为主键描述tnovarcher10是教师号teacher pesswordvarcher10是密码tnamevarcher10是姓名tsexvarcher5是性别dnovarcher10否系别cnumbervarcher10否所带课程号课程表t-course字段名字段类型字段长度是否为空是否为主键描述cnamevarcher10否课程名cnovarcher10是课程号cs

6、oredouble否课程的学分dnovarcher10否课程的系别成绩表t-score字段名字段类型字段长度是否为空是否为主键描述cnovarcher10否课程号sonvarcher10否学号scorevarcher10是成绩学生表t-student字段名字段类型字段长度是否为空是否为主键描述snovarcher10是学号snamevarcher10否姓名ssexvarcher5否性别dnovarcher10否系别sageint否年龄spasswordvarcher10否密码管理员t-manager字段名字段类型字段长度是否为空是否为主键描述managervarcher10是账号manager

7、passwordvarcher10否密码系表字段名字段类型字段长度是否为空是否为主键描述dnovarcher10是系号dnamevarcher10否系名五.程序的部分代码:1管理员底层代码: package xiangmu.dao;import java.util.List;import xiangmu.po.course;import xiangmu.po.manager;import xiangmu.po.student;import xiangmu.po.teacher;public interface ManagerDao /管理员登录public boolean inToSystem

8、(manager m); /增加学生public boolean addStudentforManager(student s);/根据学生的学号修改学生的信息public boolean updateStudentforManager(String sno,student s);/根据学号删除学生的全部信息public boolean deleteStudentforManager(String sno);/根据学号查询学生的信息public student selectStudentforManager(String sno);/查询所有学生的信息public List selectAll

9、Student();/增加老师public boolean addTeacherforManager(teacher t);/根据教师号修改教师的信息public boolean updateTeacherforManager(String tno,teacher t);/根据教师号删除教师的信息public boolean deleteTeacherforManager(String tno);/根据教师号查询教师的信息public teacher selectTeacherforManager(String tno);/查询所有教师的信息public List selectAllTeach

10、er();/增加课程public boolean addCourseforManager(course c);/根据课程号修改课程的信息public boolean updateCourseforManager(String cno,course c);/根据课程号删除课程的信息public boolean deleteCourseforManager(String cno);/根据课程号查询课程的信息public course selectCourseforManager(String cno);/查询所有课程的信息public List selectAllCourse();/退出系统pub

11、lic void backSystem();2.学生模块底层代码:package xiangmu.dao;import java.util.List;import xiangmu.po.StuChengJi;import xiangmu.po.course;import xiangmu.po.score;import xiangmu.po.student;public interface StudentDao /登录系统public boolean inToSystembyStudent(String sno,String spassword);/选课public boolean xunKeb

12、yStudent(String sno,String cno); /查询所有已选课程public List xunAllKeChengbyStudent(String sno);/查询自身的信息public student xunStudent(String sno);/查询所选课程的成绩public List xunChengJibyStudent(String sno,score s);/退课public boolean deleteCoursebyStudent(String sno,course c);/退出系统public void backSystembyStudent();3.老

13、师模块底层代码:package xiangmu.dao;import java.util.List;import xiangmu.po.student;import xiangmu.po.teacher;public interface TeacherDao /登录系统public boolean inToSystembyTeacher(String tno,String tpassword);/查询所有自身所带课程的所有学生的信息public List xunAllStudentbyStudent(String tno);/输入成绩(在上一步的结果上,输入成绩)public boolean

14、chengjibyTeacher(String sno,String sscore,String cno);/查询自身的信息public teacher xunTeacherbyTeacher(String tno);/退出系统5.主界面的servlet代码如下:package xiangmu.gongneng;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.

15、servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class main extends HttpServletprivate static final long serialVersionUID = 1L;Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncodi

16、ng(utf-8);resp.setContentType(text/html;charset=utf-8);PrintWriter out = resp.getWriter();String username = req.getParameter(username);String password = req.getParameter(password);String yonghu = req.getParameter(yonghu);if(yonghu.equals(student)req.getRequestDispatcher(/studentcaozuo).forward(req,

17、resp);else if(yonghu.equals(teacher)req.getRequestDispatcher(/teachercaozuo).forward(req, resp);else if(yonghu.equals(manager)req.getRequestDispatcher(/managercaozuo).forward(req, resp);Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOExceptio

18、n this.doGet(req, resp);6 管理员界面的代码: package xiangmu.gongneng;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import xiangmu.dao

19、impl.ManagerDaoimpl;import xiangmu.po.manager;public class managercaozuo extends HttpServlet private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doPost(request, response);public void doPo

20、st(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException PrintWriter out = response.getWriter(); String username = request.getParameter(username); String password = request.getParameter(password); manager m = new manager(username,password); ManagerDaoimpl mipm

21、l = new ManagerDaoimpl(); if(mipml.inToSystem(m) request.getRequestDispatcher(managergongneng.jsp).forward(request, response); else request.getRequestDispatcher(/managerdengluerror).forward(request, response); out.println(username); out.println(password);7.学生模块界面的代码: package xiangmu.gongneng;import

22、java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import xiangmu.daoimpl.StudentDaoimpl;public cla

23、ss studentcaozuo extends HttpServlet private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doPost(request, response);public void doPost(HttpServletRequest request, HttpServletResponse respo

24、nse)throws ServletException, IOException PrintWriter out = response.getWriter(); String sno = request.getParameter(username); String spassword = request.getParameter(password); StudentDaoimpl simpl = new StudentDaoimpl(); String sname = simpl.chaSnameforSno(sno); HttpSession sessionsno = request.get

25、Session(); HttpSession sessionsname = request.getSession(); sessionsno.setAttribute(sno, sno); sessionsname.setAttribute(sname, sname); if(simpl.inToSystembyStudent(sno, spassword) request.getRequestDispatcher(student/studentgongneng.jsp).forward(request, response); else request.getRequestDispatcher

26、(/managerdengluerror).forward(request, response); out.println(sno); out.println(spassword);8.老师界面的servlet代码:package xiangmu.gongneng;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServlet

27、Request;import javax.servlet.http.HttpServletResponse;import xiangmu.daoimpl.TeacherDaoimpl;public class teachercaozuo extends HttpServlet private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException t

28、his.doPost(request, response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException PrintWriter out = response.getWriter(); String tno = request.getParameter(username); String tpassword = request.getParameter(password); TeacherDaoimpl timpl

29、= new TeacherDaoimpl(); String tname = timpl.chaTnameforTno(tno); if(timpl.inToSystembyTeacher(tno, tpassword) request.getRequestDispatcher(teacher/teachergongneng.jsp?tname=+tname+).forward(request, response); else request.getRequestDispatcher(/managerdengluerror).forward(request, response); out.pr

30、intln(tno); out.println(tpassword); out.flush(); out.close(); 六 数据库设计的代码: /创建课程表create table t_course(cno varchar(10) primary key ,cname varchar(10) ,cscore varchar(5) ,dno varchar(10) foreign KEY (dno) REFERENCES t_dept(dno)/创建系表create table t_dept(dno varchar(10) primary key,dname varchar(10)/创建学生

31、表create table t_student(sno varchar(10) primary key,spassword varchar(10),sname varchar(10),ssex varchar(5),sage int ,dno varchar(10) foreign KEY (dno) REFERENCES t_dept(dno),)/创建教师表create table t_teacher(tno varchar(10) primary key,tpassword varchar(10) ,tname varchar(10),tsex varchar(5) ,dno varch

32、ar(10) foreign KEY(dno) REFERENCES t_dept(dno),cno varchar(10) foreign KEY(cno) REFERENCES t_course(cno)/创建成绩表create table t_score(cno varchar(10) foreign KEY(cno) REFERENCES t_course(cno),sno varchar(10) foreign KEY(sno) REFERENCES t_student(sno),sscore varchar(5),primary KEY(sno,cno)/创建管理员表create table t_manager(managerid varchar(10) primary KEY,managerpassword varchar(10) )七 程序的部分界面:1学生界面:2.老师操作界面的部分截图: 3.管理员操作界面的部分截图: 八 总结:熟练掌握了学生选课的相关业务逻辑,并且能够熟练掌握关于SSH的相关增删改查的操作。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 管理论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报