资源描述
大学生兼职系统设计
1.课程设计目
SP.NET又称为ASP+,不但仅是ASP简朴升级,而是微软公司推出新一代脚本语言。ASP.NET基于.NET FrameworkWeb开发平台,不但吸取了ASP此前版本最大长处并参照Java、VB语言开发优势加入了许多新特色,同步也修正了此前ASP版本运营错误。ASP.NET具备开发网站应用程序一切解决方案,涉及验证、缓存、状态管理、调试和布置等所有功能。在代码撰写方面特色是将页面逻辑和业务逻辑分开,它分离程序代码与显示内容,让丰富多彩网页更容易撰写。同步使程序代码看起来更干净、更简朴。作为大学生,走出校门接触社会,理解社会,做兼职是一种较好途径,一来可以锻炼自己,提高自己能力,二来可以减轻家里某些承担。但当前兼职信息良莠不齐,中介公司通过简介兼职从中牟取暴利,不但如此,诸多公司更是运用大学生涉世未深,辨别能力不强,骗取劳动力。
大学生兼职系统目是对公司和学生进行双向选取,让学生通过系统选取自己喜欢公司,公司也可以通过系统选取自己所需要学生。
2.设计方案论证
2.1需求描述
公司负责人能对公司有关信息进行管理,填写公司信息、职位需求信息、返回招聘成果。学生能对学生有关信息进行管理,填写学生信息、兼职搜索、发布求职信息并查看招聘成果,还可通过系统对公司进行评价。系统管理员通过评价对公司采用相应办法。
2.1.1 数据流图
系统中外部实体涉及公司负责人、学生两类顾客。公司负责人输入数据流涉及:公司信息、职位需求信息、招聘成果信息。系统输出给公司负责人数据流涉及:学生信息、简历信息、求职信息、评价信息。学生输入数据流涉及:学生信息、简历信息、求职信息、评价信息。系统输出给学生数据流涉及:公司信息、职位需求信息、教师信息、招聘成果信息。系统环境图如图1所示:
招聘成果信息 公司信息
公司信息
大学生兼职系统
招聘成果信息
学生
公司
学生信息 学生信息
简历信息 简历信息
图1系统环境图(顶层图、0层图)
对系统中数据流进行分类,可以以为公司信息、简历信息、学生信息为系统基本数据,求职信息、职位需求信息和招聘成果信息为系统招聘信息,评价信息为系统反馈信息。因而,可以把系统划分为基本数据管理、招聘管理和反馈管理三个子加工。系统一层数据流图如图2所示。
基本数据管理
公司信息
公司信息
学生信息
简历信息
公司负责人
公司信息
学生信息
简历信息
招聘成果信息
学生
求职信息
招聘成果信息
学生信息
评价信息
招聘管理
招聘成果信息
反馈管理
图2系统一层图
基本数据管理又可以分为公司信息管理、学生信息管理和简历信息管理,加工1基本数据管理相应二层数据流图如图3所示。
公司信息管理
公司信息
公司信息
简历信息管理
公司负责人
学生
简历信息 简历信息
学生信息管理
学生信息 学生信息
图3 加工1基本数据管理二层数据流图
招聘管理涉及求职信息填报、职业需求填报、招聘成果查询三某些,相应二层数据流图如图1-4所示。
求职信息填报
求职信息 求职信息
简历信息 简历信息
学生
公司负责人
兼职招聘
招聘成果信息 招聘成果信息
招聘成果
图4加工2招聘管理二层数据流图
反馈管理涉及评价信息管理,相应二层数据流图如图5所示。
公司
学生
评价反馈
评价信息 评价信息
图5加工3反馈管理二层数据流图
2.1.2数据字典
系统中涉及数据流有:公司信息、简历信息、学生信息、求职信息、职业需求信息、招聘成果信息和评价信息。
公司信息
数据流名:公司信息。
简述:描述公司有关信息。
构成:公司名称+公司简介+公司负责人+公司所在地+成立年份+联系电话。
来源:由公司负责人输入
去向:加工公司信息管理
流通量:小
峰值:小
学生信息
数据流名:学生信息。
简述:描述想获得兼职详细学生。
构成:学号+姓名+年龄+性别
来源:由学生自己输入
去向:加工学生信息管理
流通量:大
峰值:小
简历信息
数据流名:简历信息。
简述:描述学生简历。
构成: 学号+学生姓名+专业+特长及兴趣兴趣+计算机能力+奖惩状况+自我评价。
来源:由学生自己输入
去向:加工简历信息管理
流通量:大
峰值:
招聘成果信息
数据流名:招聘成果信息。
简述:描述招聘状况。
构成:学生学号+学生姓名+公司+职业+工作地址+薪金。
来源:由公司进行输入,学生可查看
去向:学生招聘成果
流通量:中
峰值:小
顾客信息
数据流名:顾客信息。
简述:顾客账号信息。
构成: 编号+账号+密码+密码类型
来源:由顾客进行输入
去向:反馈管理
流通量:小
峰值:小
2.1.3加工规格阐明
系统涉及最底层加工有:公司信息管理、简历信息管理、学生信息管理、求职信息管理、职业需求信息、招聘成果查询和反馈管理。
(1)公司信息管理
添加、修改和删除公司信息,由公司负责人、学生使用
(2)学生信息管理
添加、修改和删除学生信息,由学生、公司使用
(3)简历信息管理
添加、修改和删除简历信息,由学生使用
(4)招聘成果
公司负责人可以添加、修改、删除招聘成果,学生可以查询自己招聘成果。
(5)账号管理
顾客可对账号信息进行修改
2.2概要设计
2.2.1体系构造设计
大学生兼职系统
系统权限管理
基本数据管理
反馈管理
招聘管理
简历信息管理
公司信息管理
学生信息管理
评价信息管理
求职信息管理
职业需求信息管理
招聘成果管理
图6 系统体系构造
2.2.2数据库设计
(1)实体关系图
公司信息、学生信息、简历信息、求职信息、职业需求信息、招聘成果信息和评
价信息。
学生
1 1
填写
填写
发布
反馈
n
n
评价信息
简历信息
求职信息
学生信息
招聘
m
公司
1
1 1
发布
填写
发布
1 n n
职业需求信息
招聘成果信息
公司信息
图6实体关系图
(2)数据库表设计
数据库表涉及公司信息表companyInfo 、学生信息表StudentInfo、简历信息表StudentResume、招聘成果信息WorkResult
--------建表代码-------
use Stu_P_T_Web
CREATE TABLE CompanyInfo(
companyName varchar(50) primary key,
companyPerson varchar(50),
companyIntrodue text,
guoyou int,
tableID bigint identity
)
CREATE TABLE StudentPersonalInfo(
studentID int primary key,
studentName varchar(50),
sex int,
year int,
tableID bigint identity
)
CREATE TABLE StudentResumInfo(
studentID int primary key,
studentName varchar(50),
sex int,
year int,
Profession varchar(100),
Speciality varchar(100),
Reward varchar(100),
tableID bigint identity
)
CREATE TABLE Users(
U_ID int primary key,
U_Name varchar(50),
U_Password varchar(10),
U_Type int
)
CREATE TABLE WorkResult(
studentID int primary key,
studentName varchar(50),
companyName varchar(50),
Position char(10),
salary int,
tableID bigint identity
)
(3)数据表
表1公司信息表companyInfo
字段名
中文名
数据类型
长度
备注
companyName
公司名称
nvarchar
50
主键
companyPerson
公司负责人
nvarchar
50
companyIntrodue
公司简介
Text
100
Guoyou
与否国有
nvarchar
50
TableID
序号
Int
8
表2学生信息表StudentInfo
字段名
中文名
数据类型
长度
备注
studentID
学号
Char
12
主键
studentName
姓名
nvarchar
4
Age
年龄
Int
3
sex
性别
Bit
TableID
序号
Int
8
表3学生简历表 StudentResume
字段名
中文名
数据类型
长度
备注
StudentId
学号
Char
12
主键
StudentName
学生姓名
nvarchar
10
Profession
专业
Nvarchar
10
Speciality
特长
Text
100
Reward
所获证书
nvarchar
50
TableID
序号
Int
8
表4 招聘成果信息表WorkResult
字段名
中文名
数据类型
长度
备注
studentID
学号
Char
12
主键
StudentName
学生姓名
nvarchar
10
position
职业
nvarchar
8
Company
公司
nvarchar
8
salary
薪金
Int
8
TableID
序号
Int
8
表5账号信息表users
字段名
中文名
数据类型
长度
备注
U_ID
编号
Char
12
主键
U_Name
顾客名
nvarchar
10
U_Password
密码
nvarchar
8
U_Type
类型
Nvarchar
8
3.设计成果与分析
3.1登录界面
选取顾客类型并输入顾客名和密码进行登录,如图7。
图7 登录界面
3.2修改公司信息
登陆成功,可添加修改公司信息,如图8。
图8 修改公司信息
3.3公司信息查询
进行修改公司信息,输入公司名称,如图9。
图9 信息查询
3.4学生查询
输入学号进行学生简历建立查询,如图10。
图10学生查询
3.5负责人添加录取信息
负责人添加录取信息,如图11。
图11 添加信息
3.6修改个人信息
可进行添加修改个人信息,如图12。
图12修改信息
3.7个人信息管理
输入学号、姓名、年龄、性别进行个人信息管理,如图13。
图13信息管理
3.8公司查询
输入公司名称进行公司信息查询,如图14。
图14公司查询
3.9简历信息
输入学号等信息,填报简历信息,如图15。
图15简历信息
3.10学号查询
输入学号,进行录取状况查询,如图16。
图16学号查询
4.设计体会
通过短短一种星期课程设计,我深深体会到计算机有用之处;也意识到自己在计算机上有诸多局限性。运用咱们所学SQL数据库和ASP.NET结合,做一种大学生兼职系统。在教师精心指引下我重要对SQL Server数据库、ASP.NET等操作有了较好理解,从而完毕了这项工作。
虽然咱们是计算机专业,但是,咱们对计算机结识和理解,基本上都是理论方面。没有较好实际应用能力。始终忙于理论知识学习,没能有机会放开课本,真正将理论与实践相结合,因此在实训之前,计算机对咱们来说是比较抽象,但通过这次实训,咱们切身体会到所学知识有用之处。实践离咱们不再遥远!据我理解,对于咱们所学计算机知识渗入较少,之前都是教师操作为主。本次实训就不同了,同窗们都作了充分准备,在活动中同窗们都积极来机房,每位同窗都认真发现问题、解决问题。
5. 参照文献
[1]丁贵广.ASP编程基本与实例[M].北京:机械工业出版社,
[2]彭万波,景丽,周宏敏.ASP开发基本与范例[M].北京:电子工业出版社.
[3] 志凌团队,陈世明,江高举. ASP从入门到精通[M] .北京:中华人民共和国铁道出版社,
[4]张健沛.数据库原理及应用系统开发[M].北京:水利水电出版社,:203-286
[5]黄梦.Dreamweaver MX完全征服手册[M].北京中华人民共和国青年出版社,:82-452
[6]李劲.精通ASP数据库程序设计[M].北京:科学出版社,
[7]廖信彦.ASP应用典型:Web高档技巧[M].北京:中华人民共和国铁道出版社,:112-234
[8] Charels C.Caison ,陈君翻译. ASP.net程序员查询词典[M].北京中华人民共和国铁道出版社.
[9]吴明辉,胡煜,窦亮.ASP网络办公及商务应用系统开发实例导航[M].北京:人民邮电出版社.
[10]李瑞旭. ASP实例教程[M].北京:中华人民共和国电力出版社,:360-410
附录:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default :System.Web.UI.Page
{
protected void Page_Load(object sender,EventArgs e)
{
}
protected void Button1_Click(object sender,EventArgs e)
{
int type;
if (RadioButtonList1.SelectedValue == "学生")
{
type = 1;
}
else type = 0;
string name = username.Text.ToString();
string pwd = password.Text.ToString();
BLL.Users eu = new BLL.Users();
string[] regs = { "'","<","/*","<script>","--","create","alter","revoke","deny","<html","<flash","javascript","vbscript","activex","grant","drop","union","db_name(" };
for (int i = 0;i < regs.Length;i++)
if (name.IndexOf(regs[i]) != -1 || pwd.IndexOf(regs[i]) != -1)
{
Page page = (Page)HttpContext.Current.CurrentHandler;
page.ClientScript.RegisterStartupScript(this.GetType(),"message","alert('顾客名或密码不能使用特殊字符!')",true);
return;
}
string uid = eu.SelectUser(type,name,pwd);
if(uid!="")
{
if (Session["uid"] != "")
{
Session["uid"] = "";
Session["uid"] = uid;//学生uid为学生学号
}
Session["type"] = type;
Session["UserName"] = name;
Session["UserType"] = type;
if(type==0)
Response.Redirect("Company/AddCompanyInfo.aspx");
else Response.Redirect("Student/StudentPersonal.aspx");
}
else
{
Page page = (Page)HttpContext.Current.CurrentHandler;
page.ClientScript.RegisterStartupScript(this.GetType(),"message","alert('顾客名或密码错误')",true);
}
}
protected void Button2_Click(object sender,EventArgs e)
{
username.Text = "";
password.Text = "";
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
public partial class student_CompanyResearch :System.Web.UI.Page
{
protected void Page_Load(object sender,EventArgs e)
{
if (!IsPostBack)
//获取一种值,该值批示该页与否正为响应客户端回发而加载,或者它与否正被初次加载和访问。
{
//sex();//该函数绑定DDL_Year下拉菜单数据
GridViewBind();//该函数绑定GridView数据
}
}
protected void GridViewBind()
{
BLL.CompanyInfo studentInfo = new BLL.CompanyInfo();//新建BLL.ClassInfo类 studentInfo
studentIpanyName = companyName.Text;
DataTable dt = studentInfo.GetTable();//通过studentInfo.GetTable()函数获取GridView数据
gv1.DataSource = dt;
gv1.DataBind();//GridView数据绑定
}
//protected void sex()
//{
// sex.Items.Clear();
// BLL.StudentPersonalInfo studentInfo = new BLL.StudentPersonalInfo();
// DataTable dt = studentInfo.GetYearTable();//通过该函数获取班级信息中不同年度信息表
// sex.DataSource = dt;
// sex.DataTextField = "sex";//绑定内容是表中year字段值
// sex.DataBind();//DDL_Year绑定数据
// sex.Items.Insert(0,"");
//}
protected void search_Click(object sender,EventArgs e)
{
GridViewBind();
}
protected void gv1_PageIndexChanging(object sender,GridViewPageEventArgs e)//换页功能
{
gv1.PageIndex = e.NewPageIndex;
GridViewBind();
}
//protected void ContactsGridView_RowCommand(Object sender,GridViewCommandEventArgs e)//gridview 按钮点击事件
//{
// string tableID = e.CommandArgument.ToString();
// if (e.CommandName == "修改")
// {
// Response.Redirect("CompanyInfo.aspx?tableID=" + tableID);
// }
// else //删除
// {
// BLL.StudentPersonalInfo stu = new BLL.StudentPersonalInfo();
// stu.Delete(tableID);
// GridViewBind();
// ClientScript.RegisterStartupScript(this.GetType(),"message","alert('删除成功!')",true);
// }
//}
//protected void add_Click(object sender,EventArgs e)
//{
// Response.Redirect("CompanyInfo.aspx");
//}
}using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class student_StudentPersonal :System.Web.UI.Page
{
protected void Page_Load(object sender,EventArgs e)
{
if(!IsPostBack)
//获取一种值,该值批示该页与否正为响应客户端回发而加载,或者它与否正被初次加载和访问。
{
//sexbind();//该函数绑定DDL_Year下拉菜单数据
if (Request["tableID"] != null)
{
string tableID = Request["tableID"].ToString();
HF_tableID.Value = tableID;
InitStudentPersonal(tableID);
}
}
}
//protected void sexbind()
//{
// sex.Items.Clear();
// BLL.StudentPersonalInfo cla = new BLL.StudentPersonalInfo();
// DataTable dt = cla.GetYearTable();
// sex.DataSource = dt;
// sex.DataTextField = "sex";
// sex.DataBind();
//}
protected void InitStudentPersonal(string tableID)
{
BLL.StudentPersonalInfo cla = new BLL.StudentPersonalInfo();
DataTable dt=cla.GetTable(tableID);
if (dt.Rows.Count > 0)//看与否有数据,没有数据则不加载
{
studentID.Text = dt.Rows[0]["studentID"].ToString();
studentName.Text = dt.Rows[0]["studentName"].ToString();
year.Text = dt.Rows[0]["year"].ToString();
sex.SelectedValue = dt.Rows[0]["sex"].ToString();
}
}
protected void submit_Click(object sender,EventArgs e)
{
//为表中每一种属性赋值
BLL.StudentPersonalInfo cla = new BLL.StudentPersonalInfo();
cla.tableID = HF_tableID.Value;
cla.studentID = studentID.Text;
cla.studentName = studentName.Text;
cla.year = year.Text;
cla.sex = sex.SelectedValue;
if (HF_tableID.Value != "")//null和“”不同样
{
//修改
if (cla.Update())
{
ClientScript.RegisterStartupScript(this.GetType(),"message","alert('修改成功!')",true
}
}
else
{
//添加
if(cla.Insert())
{
ClientScript.RegisterStartupScript(this.GetType(),"message","alert('添加成功!')",true);
}
}
Response.Redirect("StudentPersonalInfo.aspx");
}
protected void cancle_Click(object sender,EventArgs e)
{
Response.Redirect("StudentPersonalInfo.aspx");
}
}
using System;
using Sy
展开阅读全文