大学生就业咨询系统课程设计报告_第1页
大学生就业咨询系统课程设计报告_第2页
大学生就业咨询系统课程设计报告_第3页
大学生就业咨询系统课程设计报告_第4页
大学生就业咨询系统课程设计报告_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计任务书及成绩评定课题名称 大学生就业咨询系统、题目的目的和要求: 1、设计目的掌握综合应用.NET相关系列课程所学到的知识,以Visual Studio 2005为开发工具,具备利用.NET框架和C#语言开发Web应用程序的能力:(1)通过本课程设计,熟悉系统需求分析过程,掌握建立数据流图、基本数据字典、实体关系图等信息描述及相关系统功能分析的基本方法与常用工具。(2)能针对选题,创建相应的数据库表,熟悉系统安全性策略的设计过程,掌握数据完整性设计(如数据完整性校验、一致性检查等)的基本方法。(3)根据系统需求以及所设计的数据结构,分析并设计算法,进而给出问题的正确求解过程并基于.NET框架和C#语言编写代码实现。2、设计题目要求: 要求深入分析大学生就业咨询系统中的共性问题,针对毕业生及招聘单位的特性,完成相关调研工作,给出软件系统的需求分析与详细设计报告,并最终完成大学生就业咨询系统的开发,实现以下功能模块:不同用户登录、毕业生信息管理、招聘单位信息管理、招聘职位信息管理、方便的实现对人才需求信息的检索等,完成课程设计报告的编写。、设计进度及完成情况日 期内 容1.10-1.11选取参考书,查阅有关文献资料,完成资料搜集和系统分析。1.121.14创建毕业生,招聘单位,需求信息,角色数据表,完成程序界面设计,划分模块。1.171.19对各模块进行程序设计、调试,对各模块进行整体集成、整体调试,编写详细设计报告。1.201.21答辩。、主要参考文献及资料1 张海潘. 软件工程导论M. 北京:清华大学出版社, 1998.2 李勇平. ASP.NET 2.0(C#)基础教程M. 北京:清华大学出版社, 2008.3 王珊,萨师煊. 数据库系统概论M. 北京:高等教育出版社, 2006.、成绩评定:设计成绩: (教师填写)指导老师: (签字)二一一 年一月二十一日目 录第一章 概述1第二章 问题定义2第三章 可行性研究2第四章 需求分析2第五章 总体设计6第六章 详细设计11第七章 测试与维护24第八章 致谢25参考文献 25第一章 概述课程设计是实践性教学中的一个重要环节,它以某一课程为基础,可以涉及和课程相关的各个方面,是一门独立于课程之外的特殊课程。课程设计是让同学们对所学的课程更全面的学习和应用,理解和掌握课程的相关知识。.NET Web应用程序设计C是一门重要的专业基础课,是计算机理论和应用的基础课程之一。本次课程设计的目的是开发一个大学生就业咨询系统,通过对毕业生信息的整合,以及招聘单位的要求,设计出快速检索就业单位的方式,对刚毕业的大学生提供就业咨询,实现大学生的方便就业,快速就业。根据实际需求,大学生就业咨询系统这个项目采用模块化的设计思想,在Windows XP操作系统环境下,搭建ASP.NET运行环境IIS V5.1,通过使用JavaScript脚本语言完成动态的、交互的web服务器应用程序,实现大学生就业咨询系统的主要功能,包括管理员对招聘单位信息、毕业生信息的删除的管理操作;毕业生、招聘单位在前台的浏览、查询等功能。本系统具有多方面特点:系统功能完备,使用方便简捷,人性化的用户界面,安全保密设置齐全,大大减少了操作人员和用户的工作负担。第二章 问题定义2.1系统目标大学生就业咨询系统主要实现了以下内容: 1可以存储历届的学生信息,安全、高效; 2只需一到二名信息录入员即可操作系统,节省大量人力;3可以迅速查到所需信息。 4为毕业生了解用人单位的信息提供方便;用人单位可以在该系统中发布用人信息,这样就为毕业生的择业提供了平台。 2.2业务流程图 业务流程图描述:用业务流程图描述现系统各业务的处理过程,并结合业务流程图详细准确的说明处理过程中数据的收集、输入、传递、存储、加工的方法、算法、输出的形式等。 本系统业务流程图如下所示:修改个人信息毕业生登录查看招聘单位信息查看系统注册修改单位信息登录查看系统招聘单位发布招聘信息注册毕业生信息毕业生信息删除管理员招聘单位信息招聘单位信息删除图1-1系统业务流程图第3章 可行性研究3.1技术可行性大学生就业咨询系统是由网络和网页实现的,故采用ASP.NET技术开发,使用Visual Studio 2005编程,采用Sql Server 2005设计数据库,客户端脚本采用一部分Javascript脚本编写,服务器是IIS V5.1,所以在技术上是可行的。3.2 经济可行性由于就业咨询网站所要求的硬件(计算机及相关硬件)和软件环境(visual studio +SQL Server),市场上都容易购买到或从相关网站下载,系统成本主要集中在本系统的开发与维护上。而一旦此系统投入使用,不仅可以减少学校实验室等公共学习资源的工作强度,提高资源共享率,在不增加现有资源的前提下提高资源使用率,极大限度的方便了毕业生就业信息咨询。而且,目标系统不是很复杂,开发的周期较短,人员经济支出不大,所节省的大量人力、财力产生的效益将远远大于本咨询系统的开发成本,所以从经济方面讲开发此系统是可行的。3.3 法律可行性本系统开发不会侵犯他人、集体或国家利益,不存在侵权等问题,不违反国家法律,因此具有法律可行性。综上所述,本咨询系统在技术、经济、法律上都是可行的,而且要求不高,所以开发此系统是可行的。第4章 需求分析 4.1系统需要解决的主要问题本系统要实现毕业生就业咨询网络化的查询与管理。能够实现毕业生在网上修改个人的相关信息,就业信息,查询用人单位的招聘信息,使毕业生不分时间、地点,只要能上网即可以查询和修改相应信息,并能够获取最新的招聘信息。招聘单位利用本系统可随时发布招聘信息,游览毕业生的基本信息,反馈本单位毕业生的情况等。管理员可以完成对毕业生,招聘单位的管理,可以随时浏览企业对毕业生的反馈信息。方便了各个人群。 4.2 数据流图数据流图(DFD): 数据流图简称DFD图,数据流图有四种成分:源点或终点、处理、数据存储表和数据流。图中没有任何具体的物理元素,只是描述信息在系统中的流动和处理情况,即使不是专业的计算机技术人员也容易理解,是极好的理解工具。它能精确的描述系统的逻辑模型,描述数据在MIS中有输入经过存储、加工处理最后输出的全过程,是设计者和用户交流的很好的工具。 图 形 符 号名 称符 号 说 明实体记述系统之外的数据提供或数据获得组织机构或个人,框内为实体名称处理记述某种业务的手工或计算机处理其中,PM区记述处理标号 C区记述处理名称DNS 数据存储记述与处理有关的数据存储,DN区记述存储的标号,S区记述存储数据的名称数据流记述数据流的流动方向,FM记述数据流的名称P0大学生就业咨询系统毕业生毕业生管理员管理员毕业生操作信息管理员操作信息毕业生操作结果管理员操作结果单位招聘单位单位操作信息单位操作结果 本系统的数据流图如下: 图4-1 大学生就业咨询系统TOP数据流图D1P1毕业生操作子系统F1毕业生基本信息F2毕业生就业信息F3招聘信息查询D3D2学生信息表招聘单位信息表职位需求表图 4-2 毕业生操作子系统数据流图F4发布招聘信息P2招聘单位操作子系统D3D2职位需求表招聘单位信息表图 4-3 招聘单位操作子系统数据流图招聘单位信息表F5毕业生信息删除F6招聘单位信息删除D1学生信息表D2功 P3管理员操作子系统图 4-3 管理员操作子系统数据流图 4.3数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典的作用是在软件的分析和设计过程中提供关于数据的描述信息。一般说来,数据字典应该由下列四类元素构成:数据元素,数据流,数据存储和数据处理。4.3.1 数据存储数据存储是数据结构停留或保存的地方。也是数据流的来源和去向之一,可以是手工文档或手工凭单,也可以是计算及文档。一般而言,应包括如下内容:数据存储名,说明,编号,输入的数据流,输出的数据流,组成(数据结构),数据量,存取频度,存取方式。名字:毕业生信息表描述:记录毕业生的基本信息。编号:D1组成:毕业生编号,注册名,真实名字,性别,年龄,电话,地址,Email,专业,毕业学校,注册时间名字:招聘单位信息表描述:记录单位的招聘信息。编号:D2组成:招聘单位编号,注册名,招聘单位名称,地址,电话,详细描述,注册时间第三章 概要设计名字:职位需求表描述:记录招聘单位发布的职位信息编号:D3组成:发布的求职编号,招聘单位编号,职位,要求专业,招聘起始时间,招聘结束 时间,单位地址,毕业生年龄,招聘数量,空闲数量,毕业生性别,职位要求4.3.2 数据流数据流是数据结构在系统内传输的路径。对数据流的描述通常包括如下内容:数据流名,说明,编号,数据流来源,数据流去向,组成(数据结构)。编号:F2名字:就业信息描述:就业信息查看,修改编号:F1名字:毕业生基本信息描述:毕业生学生基本信息修改,查看 编号:F4名字:发布招聘信息描述:浏览查看招聘单位招聘信息编号:F3名字:招聘信息查询描述:浏览查看招聘单位招聘信息 编号:F6名字:招聘单位信息删除描述:删除招聘单位信息编号:F5名字:毕业生信息删除描述:删除毕业生信息 4.3.3 数据处理处理过程的具体处理逻辑通常在详细设计过程中用判定表或判定树来描述。在数据字典中,只无原则描述处理过程的说明性信息,通常包括以下内容:处理过程名,说明,输入数据流,输出数据流,处理。编号:P1名字:毕业生操作子系统描述:毕业生对本系统的应用.输入/输出:D1,D2,D3编号:P0名字:大学生就业咨询系统描述:整个系统输入/输出:D1,D2,D3 编号:P3名字:管理员操作子系统描述:管理员对本系统的应用.输入/输出:D1,D2编号:P2名字:招聘单位操作子系统描述:毕业生对本系统的应用.输入/输出:D2,D3 第五章 总体设计 5.1 系统功能划分 经过对系统的需求分析,将整个系统分为三部分:毕业生子系统、招聘单位子系统、管理员子系统。 5.1.1 毕业生子系统功能划分 毕业生子系统功能比较简单,当毕业生使用注册名登录系统后,便可以查看、修改自己的个人信息 ,同时搜索用人单位的招聘信息,快速查找到自己喜欢的职业。 毕业生子系统查看 职位 详细信息毕 业 生 信 息 修 改搜 索 招 聘 单 位毕 业 生 信 息 查 询 5.1.2 招聘单位子系统功能划分招聘单位子系统主要实现的是对单位信息的查看和修改,查看毕业生的基本信息,及时发布招聘信息。当用注册名登录系统后,便可以实现以上功能。招聘单位子系统 单位基本信息查询单位基本信息修改发 布 招 聘 信 息查看毕业生基本信息5.1.3管理员子系统功能划分管理员子系统主要实现的是对招聘单位和毕业生的信息进行管理和维护,通过对他们的管理和维护,使得招聘单位和毕业生都能实时的看到自己所需要的哪一方面,咨询真实正确。管理员子系统管理员 信息 查看毕业生信息维护招聘单位信息维护5.2系统功能描述5.2.1 毕业生子系统功能描述1 基本信息描述: 本模块完成毕业生基本信息的修改操作,其中包括毕业生的毕业生编号,注册名,真实名字 ,性别,年龄,电话,地址,Email,专业,毕业学校,注册时间。 2 搜索招聘单位模块: 本模块完成毕业生对招聘职位的查找搜索功能,其中包括职称,专业,地址的输入与查找。3 查看职位详细信息模块:此模块主要实现详细了解自己查找到的招聘职位,进而决定是否对发布此职位的单位进行进一步了解及查看自己是否符合要求。5.2.2 招聘单位子系统功能描述1 单位基本信息描述: 本模块完成招聘单位基本信息的修改操作,其中包括招聘单位编号,注册名,招聘单位名称,地址,电话,详细描述,注册时间。 2 发布招聘职位模块: 此模块是本系统的一个关键模块,只有招聘单位将招聘信息发到上面,才有毕业生的查找这一模块,而且毕业生要在规定的招聘时间内查找自己的关心职位,因此,此模块包快:发布的求职编号,招聘单位编号,职位,要求专业,招聘起始时间,招聘结束时间,单位地址,毕业生年龄,招聘数量,空闲数量,毕业生性别,职位要求。5.2.3 管理员子系统模块: 此模块主要实现的后台人员对招聘单位及毕业生的信息进行维护,其中包括对招聘单位信息的删除和对毕业生基本信息的删除。5.3 数据库概念结构设计根据对数据项与数据结构的分析,设计出能够满足系统需求的各种实体,及它们之间的关系,为后面的逻辑结构设计打下基础。本系统有毕业生实体,招聘单位实体,求职需求信息实体。5.3.1 各实体属性图 1)毕业生实体属性图:毕业生编号注册时间毕业学校专业 注册名毕 业 生Email性别地址真实名字电话,年龄2)招聘单位实体属性图招聘单位注册名详细描述单位名称电话地址注册时间招聘单位编号招聘信息空闲数量年龄要求招聘人数单位地址性别要求职位要求招聘职位3)招聘单位发布的招聘实体属性图5.3.2 各实体之间的关系E-R图毕业生浏览招 聘 信 息发布工作招聘单位 (实体的各属性省略) 5.4 数据库设计数据库中总共建立了四个表,各个表的属性由上述实体属性图呈现,以下为详细的表结构: 1)用户表,包括毕业生和招聘单位 2)毕业生基本信息表3) 招聘单位基本信息表4) 发布的招聘信息需求表 第六章 详细设计详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计的处理过程应该尽可能简明易懂。6.1 系统设流程图6.1.1 毕业生子系统设计流程图 以下为毕业生子系统设计流程图:Y系统界面开始正确?登录窗口N招聘信息查询基本 信息 查询基本 信息 修改结束Y系统界面开始正确?登录窗口N招聘信息发布单位基本信息查询单位基本信息修改结束6.1.2 招聘单位子系统设计流程图Y管理界面开始正确?登录窗口N招聘单位信息删除毕业生信息删除招聘单位信息管理毕业生信息管理结束6.1.3 管理员子系统设计流程图 6.2 输入输出设计 大学生就业咨询系统是由毕业生、招聘单位和管理员进行操作的,所以系统要有登录用户及密码的验证。6.2.1 登录窗口 以下为登录窗口界面:实现的关键代码如下:protected void btnlogin_Click(object sender, EventArgs e) string _username = username.Text; string _userpwd = userpwd.Text; if (_username != string.Empty) & (_userpwd != string.Empty) user us = new user(); DataTable Dt = us.CheckLogin(_username,_userpwd); if (Dt.Rows.Count 0) SessionLogins = Server.HtmlEncode(_username); if (Int16.Parse(us.GetUserType(_username) = 2&choose.SelectedItem.Value=个人) Response.Write(alert(登陆成功!); Response.Redirect(/student/student_Default.aspx); else if (Int16.Parse(us.GetUserType(_username) = 1 & choose.SelectedItem.Value = 单位) Response.Write(alert(登陆成功!); Response.Redirect(/company/company_Default.aspx); else Response.Write(alert(用户名或密码错误,登陆失败!); else Response.Write(alert(用户名或密码错误,登陆失败!); else Response.Write(检测是否为空); protected void btnregister_Click(object sender, EventArgs e) Response.Redirect(/register.aspx);6.2.2 注册窗口 学生注册:单位注册:主要关键代码如下:protected void Button1_Click(object sender, EventArgs e) string com_id =TextBox7.Text; string user_name = TextBox1.Text; string userpwd = TextBox2.Text; string com_name = TextBox4.Text; string com_addr = TextBox5.Text; string com_tel = TextBox6.Text; string com_desc = TextArea1.Value; DateTime com_regtime = DateTime.Now; user us = new user(); company com = new company(); int resurt1 = us.Insert(user_name, userpwd, 1); int resurt2 = com.Insert(com_id,user_name, com_name, com_addr, com_tel, com_desc, com_regtime); if (resurt2 = -1) us.delete(user_name); Response.Write(添加失败!); else Response.Write(添加成功!); protected void Button3_Click(object sender, EventArgs e) string uname = TextBox1.Text.Trim(); user us = new user(); bool flag; flag = us.CheckReg(uname); if (flag = true) Label1.Text = 此用户名可用!; else Label1.Text = 此用户名不可用!; 6.2.3 毕业生基本信息更新窗口窗口 其中的关键代码为: string username=null; protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) if (Sessionlogins != null) username = Sessionlogins.ToString(); student objstudent = new student(); objstudent = objstudent.GetStudent(username); TextBox1.Text = ; TextBox2.Text = objstudent.age.ToString(); TextBox3.Text = objstudent.tel; TextBox4.Text = objstudent.addr; TextBox5.Text = objstudent.email; TextBox6.Text = objstudent.major; TextBox7.Text = objstudent.school; if (objstudent.sex = 男) RadioButton1.Checked = true; else RadioButton2.Checked = true; protected void Button2_Click(object sender, EventArgs e) Response.Redirect(/student/student_Default.aspx); protected void Button1_Click(object sender, EventArgs e) if (Sessionlogins != null) username = Sessionlogins.ToString(); student stu = new student(); string name = TextBox1.Text.ToString(); string sex = null; int age = Int16.Parse(TextBox2.Text.ToString(); string addr = TextBox4.Text.ToString(); string tel = TextBox3.Text.ToString(); string email = TextBox5.Text.ToString(); string major = TextBox6.Text.ToString(); string school = TextBox7.Text.ToString(); if(RadioButton1.Checked = true) sex = 男; else sex = 女; int result = stu.Update(username, name, sex, age, addr, tel, email, major, school); if (result != -1) Response.Write(学生信息更新成功!); else Response.Write(学生信息更新失败!); 招聘单位更新与毕业生更新相仿。6.2.4 职业搜索窗口 执行的关键代码如下: protected void Button1_Click(object sender, EventArgs e) BindGrid(); private void BindGrid() string pos = DropDownList1.SelectedItem.ToString(); string maj = DropDownList2.SelectedItem.ToString(); string add = DropDownList3.SelectedItem.ToString(); requir req = new requir(); DataSet ds1 = req.SearchReqirs(pos, maj, add); GridView1.DataSource = ds1; GridView1.DataBind(); if (GridView1.Rows.Count = 0) Label4.Text = 暂时没有单位投放此类招聘信息!; else Label4.Text = ; protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlRowType.DataRow) LinkButton b = (LinkButton)e.Row.Cells5.Controls0; b.CommandName = viewdetails; b.CommandArgument = GridView1.DataKeyse.Row.RowIndex.Value.ToString(); protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) if (e.CommandName = viewdetails) Response.Redirect(/Student/viewjob.aspx?id= + e.CommandArgument); protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) GridView1.PageIndex = e.NewPageIndex; BindGrid();6.2.5 发布招聘信息窗口执行的关键代码如下: protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) int year = new int20; int month = new int12; int day = new int31; int i = 0, j = 1990; for (; i 20; i+, j+) yeari = j; DropDownList4.DataSource = year; DropDownList4.DataBind(); DropDownList7.DataSource = year; DropDownList7.DataBind(); for (i = 0, j = 1; i 12; i+, j+) monthi = j; DropDownList5.DataSource = month; DropDownList5.DataBind(); DropDownList8.DataSource = month; DropDownList8.DataBind(); for (i = 0, j = 1; i 31; i+, j+) dayi = j; DropDownList6.DataSource = day; DropDownList6.DataBind(); DropDownList9.DataSource = day; DropDownList9.DataBind(); protected void Button2_Click(object sender, EventArgs e) Response.Redirect(/company/company_Default.aspx); protected void Button1_Click(object sender, EventArgs e) if (SessionLogins != ) company com = new company(); string username = (SessionLogins).ToString(); int rid = Int32.Parse(TextBox3.Text.Trim(); int rcid = com.GetcompanyID(username); string requir_position = DropDownList1.SelectedItem.ToString(); string requir_major = DropDownList2.SelectedItem.ToString(); string requir_stime = DropDownList7.SelectedItem.ToString() + DropDownList8.SelectedItem.ToString() + DropDownList9.SelectedItem.ToString(); string requir_etime = DropDownList4.SelectedItem.ToString() + DropDownList5.SelectedItem.ToString() + DropDownList6.SelectedItem.ToString(); string requir_addr = DropDownList3.SelectedItem.ToString(); int requir_age = Int32.Parse(TextBox1.Text.Trim(); int requir_num = Int32.Parse(TextBox2.Text.Trim(); int requir_vacancy = Int32.Parse(TextBox2.Text.Trim(); string requir_sex = null; string requir_des = TextArea1.Value; if (RadioButton1.Checked) requir_sex = 男; else if (RadioButton2.Checked) requir_sex = 女; else requir_sex = 无; requir req = new requir(); int result = req.Insert(rid, rcid, requir_position, requir_major, requir_stime, requir_etime, requir_addr, requir_age, requir_num, requir_vacancy, requir_sex, requir_des); if (result != -1) Response.Write(发布成功); else Response.Write(发布失败!); 6.2.6 查看招聘单位发布的招聘信息窗口执行的关键代码如下: private void BindGrid1() requir Requir1 = new requir(); DataSet ds = Requir1.GetSumByposition(); GridView1.DataSource = ds; GridView1.DataBind(); private void BindGrid2() requir Requir2 = n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论