《ASPNET人才网的设计与实现.docx》由会员分享,可在线阅读,更多相关《ASPNET人才网的设计与实现.docx(70页珍藏版)》请在三一办公上搜索。
1、教学单位: 计科系 学生学号: 031714322 本科毕业设计论文题目ASP.NET人才网的设计与实现学生姓名 魏育辉 学生学号 031714322 专业名称 计算机科学与技术 指导教师 张凯兵 2007年 6 月 7 日iiASP.NET人才网的设计与实现摘要: 随着计算机技术的飞速发展,高效率的网上求职和招聘方式以其费用低、范围广、信息量大的优势,正在逐渐取代传统的高费用、少信息量、小范围的现场招聘方式。ASP.NET人才网是一个功能完善的在线求职招聘系统,主要分为:系统配置信息管理模块、个人会员信息管理模块、企业会员信息管理模块,公共信息管理模块四个功能模块,实现了公共信息的浏览、更新
2、与发布,用户的注册与信息的更新与发布,及数据库的在线备份与还原等。本系统结合微软的ASP.NET技术和ADO.NET技术,采用C#作为后台语言,采用SQL-Server 2000数据库来实现,并且大量使用存储过程,提高了程序的运行速度和安全性。关键词: ASP.NET;ADO.NET;C#;数据库;存储过程The Design and Implement of Talent Website based on ASP.NETAbstract: With the rapid development of computer technology, the high efficiency way th
3、at people seek jobs and company invite applications for a job on-line is gradually substituting for the traditional one that has high expense, few information and small scope, because of its low cost, large scale and more information.The ASP.NET Talent Website is a system with full function that peo
4、ple seek jobs and company invite applications for a job on-line. It is mainly divided into four function modules: Managing system configure information, individual member information, enterprise member information and common information. It has realized the functions of browsing, updating and issuin
5、g common information, resisting, updating and issuing users information, on-line backup and restore database, and so on. This system based on ASP.NET and ADO.NET technology, takes C# as backstage language and chose SQL-Server 2000 as Database, and using a lot of store procedure, enhanced the program
6、 running rate and the security.Key Words: ASP.NET;ADO.NET;C#;Database;Stored Procedure64目 录1.绪 论11.1.网上求职和招聘现状分析21.2.本课题研究的内容22.系统需求分析32.1.系统功能需求32.2.系统流程图53.开发环境及开发工具73.1.开发环境73.2.开发工具的选用94.系统的设计与实现104.1.数据库设计104.2.代码设计294.3.界面实现435.系统安装配置595.1.数据库配置595.2.WEB服务器配置59结束语60参考文献62致 谢641. 绪 论随着全球经济一体化和市
7、场经济、信息时代的快速发展 ,世界范围内的各行各业的发展越来越离不开互联网,特别是国际互联网的迅速发展 ,使得世界瞬息万变。网站与上网人数的急剧增加 ,使得人们开发并利用网络资源成为可能 , 互联网技术正以其成本低廉、交流方便、效果显著的特点,为人们所接受。同时,由于计算机及其知识的普及,高效率的网上求职和招聘方式以其费用低、范围广、信息量大的优势,正在逐渐取代传统的高费用、少信息量、小范围的求职和招聘方式。采用网上求职和招聘方式,求职者可以足不出户,就可以实时了解招聘单位的招聘信息,向招聘单位发送求职意向;招聘单位同样可以实时掌握招聘情况,挑选合适的人选,实现高效的求职和招聘。网上求职和招聘
8、系统,是一个管理信息系统(Management Information System,简称MIS)。管理信息系统是一个集计算机技术、信息技术、数据库技术、现代管理理论为一体的综合性系统,由于数据库有结构化、最小冗余、较高的程序与数据的独立性、易于扩充、易于编程、可共享等优点,所以,现在的MIS都是建立在数据库基础上的。通常的MIS是用VC、VB、DELPHI、PowerBuilder等常规的开发工具来实现的。采用C/S(Client/Server)模式开发,在这种模式下,客户端必须安装相应的软件才能与服务器相互通信,并且在系统升级和改动时,除了需要升级服务器端软件外还要升级客户端软件,造成要不
9、必要的麻烦和损失。所以本课题所研究的内容是如何利用B/S(Browser/Server)模式开发网上求职和招聘系统。基于B/S模式的网上求职和招聘系统,客户端不须要安装特定的软件,只要有一个因特网浏览器即可与服务器相互通信,实现了跨平台。而在系统改动或升级时, 只须修改或升级服务器端软件,既省时又省钱。1.1. 网上求职和招聘现状分析目前,网上求职招聘网站正处在初级阶段,系统功能不完善,大部分都是利用在HTML文件中嵌入VBScript脚本实现动态显示技术和利用ADO方式连接管理数据库的。在网络需求迅速增长的环境下,它的缺点日益明显:执行效率较低;代码逻辑混乱,难于管理;代码的可重用性差;弱类
10、型造成潜在的出错可能等。利用ADO 方式连接管理数据库是一种连线数据库管理方式,它不能很好地支持规模较大的网站,在访问量比较大的时候容易出现拒绝服务的情况,服务器因处理不了太多的连接请求而瘫痪,造成系统不能正常运行,给招聘单位和求职者造成巨大的损失。1.2. 本课题研究的内容 本系统的主要功能分为四个大的功能模块:系统配置信息管理模块、个人会员信息管理模块、企业会员信息管理模块,公共信息管理模块。各模块所实现的功能具体如下:(1) 系统配置信息管理模块网站基本信息管理就业新闻的发布站内消息管理普通用户管理企业用户管理日志管理系统安全管理(2)普通会员信息管理模块会员注册简历更新职位查询职位收藏
11、求职申请求职意向管理站内消息管理(3)企业会员信息管理模块企业会员注册应聘信息管理企业信息管理招聘职位管理站内消息管理(4)公共信息管理模块职位查询英才信息浏览就业新闻浏览2. 系统需求分析2.1. 系统功能需求2.1.1. 企业用户注册一个企业要发布相关的招聘信息,必须是网站的合法注册用户。为了保证企业用户资料的可靠性,企业用户在填写相关资料成功注册用户后,必须经过管理员的审核才可以成为正式用户,才能发布相关的招聘信息,否则企业的资料和发布的招聘信息将不可见,直到通过管理的审核才可以被求职者所浏览到。当成为合法用户后,企业用户可以向求职者发送面试通知,也可以将合适的人才添加到企业人才库中,以
12、备日后挑选。网站还提供站内消息功能,可以和求职者进行交流,更快地招聘到合适的人才。2.1.2. 个人用户注册求职者要想向相关的企业用户发送求职意向,必须是网站的合法注册用户。个人用户在成功注册在为网站的个人用户后,可以制作一份具有特色的个人简历,并可以上传相片,增加就业的机会;可以利用职位搜索的功能快速筛选符合要求的职位,并可以向发布该职位的单位发送简历和求职意向,也可以将该职位添加到职位收藏夹中,以备挑选,并可以利用网站提供的站内消息功能与用户单位进行交流;当求职者的简历不想被用人单位搜索到时,可以将个人简历暂时屏蔽;当求职者所要应聘的本站以外的企业发布的职位时,可以利用本站提供的简历外发功
13、能,将个人的简历发送到用人单位的邮箱中。2.1.3. 发布公共信息为了让企业用户在最短的时间内找到合适的人才,也为了让求职者更快地找到满意的工作,网站在首页显示最新发布的企业招聘信息和最近更新简历的人才信息,只要求职者经常登陆本站,就可以大大提高就业的机会;本站还提供热点新闻功能和相关技术文章,让用户更方便了解到当前的行业资讯,求职者可以学习到求职的相关技巧,制作出有个性的简历,招聘单位可以学习到如何更加有效地挑选人才。2.1.4. 网站后台管理为了网站更有效地提供服务,一个设计良好的后台管理模块必不可少。在注册用户不断增加的情况下,如何有效地管理这些用户也是网站管理员工不可避免的问题。本后台
14、管理模块提供网站基本信息的管理,可以修改网站的主题,版权及联系方式等;站内文章的管理,可实现文章的录入,修改及删除等功能;企业用户的管理,可以修改企业用户的资料,修改相关招聘信息等;个人用户的管理,修改个人用户的相关信息等;站内消息管理,管理站内用户发送的消息,以及向站内用户发送信息;委托招聘管理,为没有时间自行招聘的单位提供代理招聘功能。2.1.5. 网站安全管理发展迅速的互联网技术,为人们工作提供方便的同时,也为黑客提供了方便,病毒、木马,无处不在。为了保证网站的安全,本系统提供了在线数据备份、还原功能,以备系统在遇到攻击时可以尽快恢复到正常状态,将损失降到最低。日志管理功能可以查看监控网
15、站用户的相关活动,保证系统的安全。2.2. 系统流程图2.2.1. 基本流程网站的基本流程如图1所示公共信息浏览登陆成功?用户登陆用户注册用户管理模块注册成功?否否是是图1 网站基本流程2.2.2. 后台管理网站的后台管理模块如图2所示登陆成功?管理员登陆网站管理模块网站配置文章管理消息管理个人管理企业管理委托招聘安全管理管理首页否是图2 后台管理模块2.2.3. 企业用户管模块企业用户管理模块如图3 所示登陆成功?企业用户登陆企业用户管理模块信息管理招聘管理简历管理服务管理站内消息退出登陆会员首页否是图3 企业用户管理模块2.2.4. 个人用户管理模块个人用户管理模块如图4所示登陆成功?个人
16、用户登陆个人用户管理模块我的简历万别职位搜索我的助理高级设置站内消息退出登陆会员首页否是图4 个人用户管理模块3. 开发环境及开发工具3.1. 开发环境3.1.1. 几种常用动态网页技术比较当今的动态网页技术主要以ASP、PHP、JSP、ASP.NET等几种。其中ASP技术是微软公司推出的一款搭配WINNT+IIS的动态网页技术;PHP也是当今比较流行的网络编程脚本语言之一,搭配以Linux +Apache发布;JSP是Sun公司推出的新技术,以java为编程语言,是基于Java Servelet以及整个Java体系的Web开发技术;ASP.NET是微软推出的一项动态网页设计的新技术,它不是A
17、SP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。提供基于组件、事件驱动的可编程网络表单,大大简化了编程;利用面向对象的编程语言,提高代码的可重用性;编译运行的编程框架,大大提高程序运行速率。 在.NET 开发平台下,所有语言(C#、VB.NET 、J# 、C+)都会被编译为MSIL(微软中间语言即Microsoft Intermediate Language),再由CLR负责运行,增强了程序的可移植性。因此,本系统将采用ASP.NET技术开发实现。3.1.2. WEB服务器的选用由于使
18、用习惯以Windows操作系统为服务器的操作系统人来说,选用IIS是比较好的选择。IIS是Internet Information Server的缩写,它是微软公司主推的服务器。IIS的设计目的是建立一套集成的服务器服务,用以支持HTTP,FTP和SMTP,它能够提供快速且集成了现有成品、同时可扩展的Internet服务器。IIS支持与语言编写和组件,通过IIS,开发人员就可以开发新一代动态的、富有魅力的Web 网站。安装了.Net Framework 1.1, 配置了Frontpage 服务扩展, IIS即可支持ASP.NET,它也支持CGI和WinCGI,以及ISAPI扩展和过滤器。3.1
19、.3. 数据库的选用Microsoft SQL Server 2000是Microsoft公司推出的面向办公自动化、功能强大的关系数据库管理系统。主要特点如下:(1) 基于图形的管理工具在SQL Server 2000 中使用图形化管理工具能够容易地进行各种操作,如利用企业管理器,就可以完成大部分的管理操作。(2) 集中式的管理不管与SQL Server服务器相距多远,数据库管理员就可以在中心位置使用SQL 企业管理器来管理所有服务器(3) 支持多客户应用程序SQL Server 支持各种类型的客应用程序,并提供一组标准应用程序,数据库管理员可以用它来管理工作服务器和修改数据。SQL Serv
20、er还提供了一组标准ODBC(Open Database Connectivity,开放式数据连接),它是一组驱动程序,可以使基于不同数据库平台的程序开发变得更快、更容易。支持多个不同的开发平台数据库开发人员可以用现有的任意开发平台编写应用程序来访问SQL- Server。这就是说不管用什么语言编写的程序都可以用于SQL Server。(4) 支持数据复制与以前的版本一样,SQL Server支持数据复制。复制是为了保证用户随时使用数据,此外,SQL Server还支持“合并复制”这种新的复制方法。合并复制允许用户在任何地方修改数据,用户所做的修改可以发送到主机做拷贝,然后再复制到其它订阅服务
21、器。这样不仅可以减少用户发送数据所占的带宽,还可以缩短用户得到数据的时间。(5) 支持分布式事务处理SQL Server支持分布式事务处理。分布式事务处理是指几个服务器同时进行的事务处理,如分布式处理系统中任意一具服务器不能响应所请求的改动,那么系统中所有服务器都不能改动,为了保证进行分布式事务处理,所有的计算机都必须能响应请求的改动,否则,所有的改动都将被取消。(6) 支持数据仓库SQL Server在处理大量数据方面已经做了很多改进,这使得它在管理大型数据仓库方面相当完美。数据仓库通常是一些海量数据库,这些数据库包含了来自面向事务的数据库数据。这些大型数据库用来研究趋势,这些趋势决非是一般
22、粗略的检查就可以发现的。3.2. 开发工具的选用Dreamweaver 是美国 Macromedia 公司开发的集网页制作和网站管理于一体的所见即所得的网页编辑器,它与Flash、Fireworks合在一起被称为“网页制作三剑客”,这三个软件相辅相成,是制作网页的最佳选择。Dreamweaver MX 是一款专业的 HTML 编辑器,用于对 Web 站点、Web 页和 Web 应用程序进行设计、编码和开发。借助 Dreamweaver,还可以使用服务器语言(例如 ASP、ASP.NET、ColdFusion 标记语言 (CFML)、JSP 和 PHP)生成支持动态数据库的 Web 应用程序。D
23、reamweaver对ASP.NET网页的设计提供了非常出色的支持,无论是网页的创建还是数据库程序的编写,均能够通过可视化的方式来完成,ASP.NET网页开发人员几乎不用编写任何代码,便能够用Dreamweaver快速创建具有各种功能的网页雏形。Visual Studio .NET 2003 提供了对ASP.NET Web 应用程序的开发,使用 code behind 技术提高网页开发的效率和网页代码的安全性,增强了程序的可维护性,但是在界面美工方面不如Dreamweaver。本系统结合以上两种开发工具,利用Dreamweaver开发系统界面,采用面向对象的编程思想,利用Visual Stud
24、io .NET 2003编译动态链接库文件,使得系统在更新时只需更新相应的动态链接库文件即可,提高了网站的安全性和运行效率。4. 系统的设计与实现4.1. 数据库设计4.1.1. 数据库概念结构设计任何一个管理系统都必须要有其数据库,一个设计良好的数据库是一个应用软件成功的关键所在,此系统是采用SQL-Server 2000作为数据库。根据大量的调查和分析,经过多次修改和完善,这个系统中所用到的数据库表的实体图如图5 至 图32所示,E-R 如图33所示。ApplyJob申请日期用户ID招聘ID申请者状态(是否删除)接收人状态(是否删除)图5 ApplyJob实体Article标题作者类别内容
25、添加日期点击数图6 Article实体ArticleClass类别ID号类别名称图7 ArticleClass实体City城市编号城市名称所在省份图8 City实体Prov省份编号省份名称图9 Prov实体NationTable民族编号民族名称图10 NationTable实体SDeptTable部门编号部门名称图11 SDeptTable实体SpeciTable专业编号专业名称所在部门图12 SpeciTable实体JobTable职位类别编号职位类别名称图13 JobTable实体SubJobTable职位编号职位名称所在职位类别图14 SubJobTable实体Manager管理员ID号
26、管理员密码图15 Manager实体Log用户ID登陆日期用户类型所做事件登陆IP图16 Log实体ErrorMessage发生时间所在路径错误消息图17 ErrorMessage实体FriLinke链接名称网站URLLogoURL图18 FriLink实体联系地址WebInfoWebURL企业用户列表状态个人用户列表状态点击数WebLogo网站名称联系QQ联系电话电子邮箱邮政编码图19 WebInfo实体Message消息ID发送者状态接收者状态是否新消息发送者ID发送时间消息内容接收者ID消息主题图20 Message实体Ind_User用户ID用户相片用户状态性别证件类型证件号码民族婚姻
27、状况人才类型技术职称政治面貌毕业院校最高学历出生年月身高籍贯电子邮箱现居住地个人主页联系地址邮政编码联系电话手机密码姓名图21 Ind_User实体InterViewNotice简历ID发送者状态(是否删除)接收者状态(是否删除)职位ID发送时间面试须知面试日期面试地点图22 InterViewNotice实体JobCollect职位ID号收藏人ID号图23 JobCollect实体JobSearch用户ID工作经验教育水平意向城市关键字意向职位性别要求图24 JobSearch实体MetierGoal用户ID其它要求期望工作职位工作性质期望工作城市到岗日期薪水要求图25 MetierGoal
28、实体MetierSkill用户ID自我推荐计算机水平普通话水平外语1业余爱好专业特长外语1水平外语2水平外语2职业目标图26 MetierSkill实体ResumeInfo简历ID相片状态联系方式状态用户ID被查看次数更新日期简历状态图27 ResumeInfo实体EduBackground自动编号专业描述专业ID用户ID学校名称开始日期结束日期教育水平图28 EduBackground实体WorkExperience自动编号职位名称所属行业用户ID公司名称开始日期结束日期公司性质主要业绩图29 WorkExperience实体EnP_User用户ID企业CI企业性质所属行业注册资金执照编号法
29、人代表成立时间联系人传真是否会员登陆次数公司简介用户状态电子邮箱公司主页联系地址邮政编码联系电话密码企业名称所在地图30 EnP_User实体TalentLib企业用户ID简历ID号图31 TalentLib实体ZPInfo企业ID是否删除点击数面试须知结束日期性别要求开始日期教育水平语言水平语言要求登陆次数职位描述招聘人数薪水工作城市工作性质职位名称职位类别职位ID工作经验要求图32 ZPInfo实体Ind_UserEduBackgroundWorkExperiencerMetierSkillMetierGoalJobSearchResumeInfoInterViewNoticeApplyJ
30、obJobCollectZPInfoEnP_UserTalentLibWIRCESGJLZJZTVIAZPn1n 11111111n1nnn11n1n1n1n1n111图33 数据库关系E-R图4.1.2. 数据库逻辑结构设计将上面的数据库概念结构转化为SQL Server 2000数据库系统所支持的实际数据模型,也就是数据库的逻辑结构,如下表1 至表28 所示:表1 职位申请表ApplyJob字段名称数据类型数据长度是否为空说明AJIDint-Not null自动编号,主键UserIDvarchar20Not null用户IDZPIDintNot null招聘IDAppDatesmallda
31、tetime-null申请日期SenderDelbit-null发送方状态ReceiverDelbit-null接收方状态表2 城市表City字段名称数据类型数据长度是否为空说明CityNochar3Not null城市编号,主键CityNamechar8Not null名称ProvNotinyint-Not null所在省份表3 文章表Article字段名称数据类型数据长度是否为空说明NSIDint-Not null自动编号,主键Subjectvarchar100Not null文章主题Writervarchar100null作者AddDatesmalldatetime-null添加日期Co
32、ntenttext-null文章内容ViewCountint-Not null点击数Classtinyint-Not null文章类别表4 文章类别表ArticleClass字段名称数据类型数据长度是否为空说明Class tinyint-Not null类别编号,主键ClassNamevarchar10Not null类别名称表5 省份表Prov字段名称数据类型数据长度是否为空说明ProvNo tinyint-Not null省份编号,主键ProvNamechar8Not null省份名称表6 民族表NationTable字段名称数据类型数据长度是否为空说明NationNo tinyint-N
33、ot null自动编号,主键NationNamechar10Not null民族名称表7 部门表SDeptTable字段名称数据类型数据长度是否为空说明SDeptNo tinyint-Not null自动编号,主键SDeptNamevarchar50Not null部门名称表8 专业表SpeciTable字段名称数据类型数据长度是否为空说明SpeciNotinyintNot null自动编号,主键SpeciName varchar50Not null专业名称SDeptNotinyintNot null所在部门表9 职位类别表JobTable字段名称数据类型数据长度是否为空说明JobNo tin
34、yint-Not null自动编号,主键JobNamechar20Not null类别名称表10 职位SubJobTable字段名称数据类型数据长度是否为空说明SubJobNochar3Not null自动编号,主键SubJobName char28Not null职位名称JobNotinyint-Not null所属类别表11 日志表Log字段名称数据类型数据长度是否为空说明IDbitint-Not null自动编号,主键UserIDVarchar20Not null用户IDLogDatesmalldatetime-null登陆日期UserTypetinyint-null用户类型UserAc
35、tion char-null所做事情LogIpBit-null登陆IP表12 管理员表Manager字段名称数据类型数据长度是否为空说明UID Varchar20Not nullID号,主键PWDchar16Not null密码表13 错误信息表ErrorMessage字段名称数据类型数据长度是否为空说明IDint-Not null自动编号,主键ODsmalldatetime-Not null发生错误日期Pathvarchar50null所在路径Messagevarchar1000 null错误消息内容表14 友情链接表FriLink字段名称数据类型数据长度是否为空说明FLIDint-Not
36、null自动编号,主键LinkNamevarchar50 null链接名称WebURLvarchar50null网站地址LogoURLvarchar50 nullLogo地址表15 职位收藏表JobCollect字段名称数据类型数据长度是否为空说明JCIDint-Not null自动编号,主键ZPIDint-Not null招聘IDUserIDvarchar20Not null用户ID表16 网站基本配置表WebInfo字段名称数据类型数据长度是否为空说明IDtinyint-Not null自动编号,主键WebNamevarchar50Not null网站名称WebURLvarchar50nu
37、ll网站地址WebLogovarchar50nullLogo地址Emailvarchar50null电子信箱Addressvarchar100null联系地址Zipchar6null邮政编码Telphonechar15null联系电话QQchar12null联系QQVisitedCountbigint-Not null访问量PersonalListtinyint-Not null个人用户列表状态EnterPriseListtinyint-Not null企业用户列表状态表17 站内消息表Message字段名称数据类型数据长度是否为空说明MSIDint-Not null自动编号,主键Sender
38、varchar20Not null发送人Receivervarchar20null接收人Titlevarchar50null消息主题Contentvarchar400null消息内容WriteDatesmalldatetime-null发送日期IsNewbit-Not null是否新消息Sender_Delbit-null发送者是否删除Receiver_Delbit-null接收者是否删除表18 面试通知表InterViewNotice字段名称数据类型数据长度是否为空说明INIDint-Not null自动编号,主键RSIDint-Not null简历IDZPIDint-Not null招聘I
39、DMSDatevarchar50null面试日期MSAddrvarchar60null面试地点Attentvarchar400null面试须知SendDatesmalldatetime-Not null发送日期SenderDelbit-null发送者是否删除ReceiverDelbit-null接收者是否删除表19 个人用户信息表Ind_User字段名称数据类型数据长度是否为空说明UserIDvarchar20Not null用户ID,主键UserPwdchar16Not null密码UserNamevarchar20Not null真实姓名Sexbit-Not null性别Emailchar
40、25null电子信箱Zipchar6null邮政编码Addresschar50null联系地址Telephonechar15null联系电话Mobilechar12null手机HomePagevarchar50null个人主页CertiTypetinyint-null证件类型CardNovarchar20null证件号码TalentTypetinyint-null人才类型Nationtinyint-Not null民族MarryStatetinyint-Not null婚姻状况SkillLevltinyint20Not null技术职称PoliVistinyint20null政治面貌GradA
41、cadvarchar50null毕业院校MaxEduLevltinyint-null最高学历Birthdaysmalldatetime-Not null出生年月Staturechar3null身高NativePlacebit-Not null籍贯CityNochar3Not null现居住地Photobit-null相片路径Lockedbit-null是否被锁定RegDatesmalldatetime-Not null注册日期表20 企业人才库表TalentLib字段名称数据类型数据长度是否为空说明TLIDint-Not null自动编号,主键ENIDvarchar20Not null企业用户