学生就业管理系统设计报告.docx
- 文档编号:11284686
- 上传时间:2023-02-26
- 格式:DOCX
- 页数:21
- 大小:575.82KB
学生就业管理系统设计报告.docx
《学生就业管理系统设计报告.docx》由会员分享,可在线阅读,更多相关《学生就业管理系统设计报告.docx(21页珍藏版)》请在冰豆网上搜索。
学生就业管理系统设计报告
学生
指导教师
课题名称
设计时间
设计地点
设计目的
《网站编程技术》是一门实践能力要求高、与实际联系非常紧密、面向应用的工程实践性课程;课程设计是本课程教学计划中综合性较强的实践教学环节,通过项目开发过程、常见问题处理,不仅有利于提高学生在实践中提升解决问题的能力;也能够有效地帮助学生全面地掌握课堂教学内容,培养学生的实践和实际动手能力,对于提高学生全面素质具有很重要的意义。
一、课程设计概述:
1、背景介绍:
随着社会的发展,教育的进步,每年都有大量的毕业生涌向社会、面临就业。
为了更好的促进学生就业,学校通过获取学生个人信息,再根据每个学生的就业意向,以便推荐相应的工作岗位。
以往学校获取学生信息完全手工操作,通过纸张记录信息,既浪费时间,又浪费人工,而且查询学生信息时比较麻烦。
学校作为学生和用人单位的中间桥梁,需要管理大量的信息,为了使学生信息的管理更科学、更规范,减少重复劳动,节省学校建设和管理中的人力、物力和财力,所以有必要建立一个学生就业管理系统。
这个系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
应用此系统,可以为学生和用人单位提供各自的信息,方便学生和用人单位进行“双选”,满足学生就业、择业和用人单位用人的需求。
2、目的与任务:
学生就业管理系统----意在方便学校管理学生信息,然后根据每个学生的就业意向,以推荐相应的工作岗位,进而促进学生就业和择业。
系统主要功能为:
记录学生信息的同时,亦可对学生信息进行管理,包括学生信息的添加、修改、查询和删除等。
学校通过对学生信息的管理,能更好的为学生和用人单位搭建交流平台,促进学生的就业、满足用人单位用人的需求,在一定程度上缓解就业压力。
通过该项目的开发,必将进一步加深了对网站编程的理解,锻炼了分析、解决实际问题的能力,提高了适应实际、实践编程的能力,培养了在项目开发中的创新意识。
最后,提交课程设计报告、源程序和数据库。
3、项目开发环境:
(1)硬件环境:
计算机1G内存以上
(2)操作系统:
windowsXP以上版本
(3)开发语言:
Java语言
(4)开发环境:
MyEclipse+Tomcat+MySQL
(5)开发工具:
MyEclipse8.5,JDK,MySQL
(6)Web应用服务器:
Tomcat6.0.14
(7)数据库系统:
MySQL
(8)网络环境:
局域网、广域网、互联网均可
4、开发团队组织结构
(1)项目负责人:
(2)项目成员:
(3)分工:
①负责login.jsp,register.jsp,studentAdd.jsp的前台页面设计和美工,数据库连接、测试及数据库的创建和管理工作。
②负责index.jsp,studentEdit.jsp,studentList.jsp的前台页面设计和美工,通过studentList.jsp实现学生信息查询和删除,并通过链接可重新编辑和删除学生信息。
③主要负责后台操作:
编写java类user.java封装用户信息。
Student.java封装学生类,通过添加学生信息,修改学生信息,删除学生信息方法,实现学生信息管理。
实现各模块控制,servelt,,AddUserServlet注册用户,DelStudent.java删除用户,LoginServlet用户登录,StudentAdd.java学生添加信息,StudentUpdate.java修改学生信息。
5、参考资料
清华大学出版社,JSP开发技术,编号第205080号,2011年度月印刷;
电子工业出本社,高性能MySQL(HighPerformanceMySQL),2010年印刷;
清华大学出版社,Java语言最新使用案例教程,2003年印刷。
二、系统需求分析
1、功能需求
本就业管理系统分为两大子功能模块:
管理员可以实现所有功能,包括用户登录、登录,学生添加、修改、删除、查询等子功能。
普通用户只能进行学生添加、学生修改等子功能。
2、性能需求
软件需求:
Xp系统,myeclipse8.0,mysql数据库,java环境,JSP连接MYSQL的JAR包。
硬件需求:
内存1G以上,硬盘250G。
三、系统设计
1、系统总体结构
开发一个学生就业管理系统,主要有两个部分:
用户管理,学生管理两大子功能。
(1)用户管理主要用于用户信息的相关管理,主要包括用户的登录,用户的验证,用户的注册三个功能。
(2)学生管理主要用于学生信息管理,主要包括学生信息(编号,姓名,年龄,性别,学校,学历,就业去向等)的添加,学生信息的查询,学生信息的删除,学生信息的更新四个功能。
2、系统模块结构
//学生管理系统用户登录、用户注册、学生添加、学生删除、学生修改模块都由servlet控制。
在web.xml配置如下:
3、数据库设计
学生就业管理系统采用mysql数据库
数据库结构设计:
一个数据库,一张user表,一张student表
User表
列名
数据类型
长度
是否为空
注释
Username(主键)
varchar
10
否
用户名
pwd
varchar
10
是
密码
student表
列名
数据类型
长度
是否为空
注释
id(主键)
varchar
10
否
编号
name
varchar
10
是
姓名
age
varchar
10
是
年龄
sex
varchar
10
是
性别
school
varchar
10
否
毕业学校
xueli
varchar
10
是
学历
jyqx
varchar
10
是
就业去向
四、本人所完成的主要工作
主要负责后台管理,实现用户登录、用户注册、学生添加、学生修改、学生删除,及代码调试。
(1)注册用户界面及代码实现:
//单击“注册”按钮,由AddUserServlet.java类控制,其控制代码如下:
publicclassAddUserServletextendsHttpServlet{
@Override
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
//从登录界面获取用户名与密码
Stringname=request.getParameter("name");
Stringpwd=request.getParameter("pwd");
Stringsql="insertintouservalues(?
?
)";//添加用户语句
Useruser=newUser();
user.setName(name);
user.setPwd(pwd);
try{
if(user.addUser(Useruser)){
request.setAttribute("addUser","更新成功");
request.getRequestDispatcher("index.jsp").forward(request,response);
}else{
request.setAttribute("addFailed","正确输入您的ID");
request.getRequestDispatcher("register.jsp").forward(request,response);
}
}catch(SQLExceptione1){
request.setAttribute("addFailed","正确输入您的ID");
request.getRequestDispatcher("register.jsp").forward(request,response);
}
}
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
doGet(request,response);
}
}
(2)添加学生代码及界面
//单击“添加”按钮,由StudentAdd.java类控制,其控制代码如下:
publicclassStudentAddextendsHttpServlet{
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
Stringid=request.getParameter("id");//从studentAdd.jsp页面获取学生相关字段信息
Stringname=request.getParameter("name");
Stringsql="insertintostudentvalues(?
?
?
?
?
?
?
)";//添加学生
Studentstu=newStudent();
stu.setId(id);
stu.setName(name);
stu.setAge(age);
stu.setSex(sex);
stu.setSchool(school);
stu.setXueli(xueli);
stu.setJyqx(jyqx);
//调用Student类中的添加学生方法,实现往student表中添加学生信息
try{
if(stu.addStudent(Studentstu)){
request.setAttribute("addStudent","更新成功");
request.getRequestDispatcher("index.jsp").forward(request,response);
}else{
request.setAttribute("addFailed","正确输入您的ID");
request.getRequestDispatcher("studentAdd.jsp").forward(request,response);
}
}catch(SQLExceptione1){
request.setAttribute("addFailed","正确输入您的ID");
request.getRequestDispatcher("studentAdd.jsp").forward(request,response);
}
}
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
doGet(request,response);
}
}
(3)学生删除代码及界面
//单击“删除”按钮,由DelStudent.java类控制,其控制代码如下:
publicclassDelStudentextendsHttpServlet{
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
Stringid=request.getParameter("id");//从del.jsp页面获取用户编号
Stringsql="deletefromstudentwhereid='"+id+"'";
Studentstu=newStudent();
stu.setId(id);
request.setAttribute("stu",stu);
….…..…//封装学生信息,调用Student类中删除学生方法删除学生信息
try{
if(stu.del(id)){
request.getRequestDispatcher("index.jsp").forward(request,response);
}else{
request.setAttribute("error","请正确输入您的ID");
request.getRequestDispatcher("login.jsp").forward(request,response);
}
}catch(SQLExceptione){
request.setAttribute("error","请正确输入您的ID");
request.getRequestDispatcher("login.jsp").forward(request,response);
}
}
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
doGet(request,response);
}
}
(4)修改学生界面代码
//单击“修改”按钮,由StudentUpdate.java类控制,其控制代码如下:
publicclassStudentUpdateextendsHttpServlet{
@Override
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
….…..…//从界面获取相关字段值
Stringsql="updatestudentsetname=?
age=?
sex=?
school=?
xueli=?
jyqx=?
whereid=?
";
Studentstu=newStudent();
….…..…//封装学生信息,调用Student类中修改学生方法删除学生信息
}
(5)登录界面代码
//单击“登录”按钮,由LoginServlet.java类控制,其控制代码如下:
publicclassLoginServletextendsHttpServlet{
@Override
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
StringuserName=request.getParameter("username");
StringpassWord=request.getParameter("password");
Stringsql="selectpasswordfromuserwhereusername='"+userName+"'";
Studentuser=newStudent();
user.setPassword(passWord);
user.setUsername(userName);
request.setAttribute("userBean",user);
try{
if(user.loginCheck(sql)){
request.getRequestDispatcher("index.jsp").forward(request,response);
}else{
request.setAttribute("error","请核对用户名和密码");
request.getRequestDispatcher("login.jsp").forward(request,response);
}
}catch(SQLExceptione){
request.setAttribute("error","请核对用户名和密码");
request.getRequestDispatcher("login.jsp").forward(request,response);
}
}
(6)一个DAO工厂类,通过此类可实现jsp与mysql数据库连接,事务回滚,提交,创建StudentDAO接口的实例
packagecom.dao;
importjava.io.IOException;
importjava.io.InputStream;
importjava.sql.*;
importjava.util.Properties;
publicclassJdbcDaoFactory{
publicJdbcDaoFactory(){}
privateConnectionconnection=null;//提供同一个链接
privateConnectiongetConnection()//获取数据库链接
{
if(connection==null){
try{
StringdbURL,userName,userPwd;
dbURL=daoConfigProps.getProperty("dbURL");
userName=daoConfigProps.getProperty("userName");
userPwd=daoConfigProps.getProperty("userPassword");
if((userName==null)||userName.trim().equals(""))connection=DriverManager
.getConnection(dbURL);
elseconnection=DriverManager.getConnection(dbURL,userName,
userPwd);
}catch(Exceptione){
thrownewExceptionInInitializerError("***未能创建与数据库的链接***");
}
}
returnconnection;
}
privatestaticPropertiesdaoConfigProps=null;//DAO配置属性
static{//静态构造方法,在载入该类的字节码时执行
if(daoConfigProps==null){//读取配置文件
InputStreaminStream=null;
try{
inStream=JdbcDaoFactory.class
.getResourceAsStream("daoconfig.properties");
daoConfigProps=newProperties();
daoConfigProps.load(inStream);//将配置项存入配置属性集
inSt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 就业 管理 系统 设计 报告