




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于JSP技术的猎头公司管理软件的设计和实现内部事务部分1 引言1.1背景猎头公司在外国已有几十年的历史,而中国出现猎头行业不过十来年的事。早期主要是为外企在中国的机构寻找本土人才。近年来,许多国企,特别是一些上市的股份公司、民营高科技企业也跻身于猎头公司客户的行列。改革开放后,企业走向市场,人才走向市场,当企业向市场要效率的时候,对人才的需求日益迫切,这时,作为搜寻人才的有效方式,猎头公司就很自然地抢滩中国大地。国内最早的猎头公司是1992年成立的。到1995年北京就审批了3家以猎头为主的有独立法人资格的国内猎头公司和两家兼做猎头的报道越来越多;公司里,白领以接到猎头电话为荣;越来越多的中介公司涉足猎头业务。 从全国来看,以北京、上海、广州、深圳为核心的猎头公司为以百计,并成倍递增,而国外的猎头公司也开始大量地进驻中国,几乎国际著名的猎头公司都在国内设立了办事处。猎头市场在中国真的启动起来了。据不完全统计,中国现在大大小小的猎头公司上千家,主要集中在北京、上海、深圳、广州、天津、南京等大城市。1.2选题意义在背景里已经猎头行业的现状,在这种大环境下,猎头公司对各种员工内部管理也变的十分重要了,怎么提高管理效率,实现员工的工作智能化,成为迫切需要解决的问题,而猎头管理软件正是为满足猎头公司的管理而出现的。虽然猎头管理软件这块,中国远远比不上做了几十年的欧美,但是欧美软件的成本却让中国本土的猎头公司望而却步,这就对国内软件行业提出了要求,谁能占得先机就能拥有更多的市场竞争力,谁能针对猎头行业开发出更适应猎头的软件就拥有更多的技术竞争里,所以,开发猎头管理软件不只能提高猎头公司的管理和办公的效率,更重要的是,中国本土开发的软件,成本上就有竞争力,对整个猎头行业都有很大的贡献。商业源代码,全套计算机免费下载 ibaidusoft更多全套设计联系QQ:1042897696最新设计大全 bylw168/sf/20XX0915/3539.2 理论基础在前面的引言里已经说了猎头行业的背景,在这种大环境下,猎头公司对各种员工内部管理软件的需求也变的迫切了,而在猎头管理软件这块,中国远远比不上做了几十年的欧美,但是欧美软件的成本却让中国本土的猎头公司望而却步,这就对国内软件行业提出了需求,谁能占的先机就能拥有更多的市场竞争力,谁能针对猎头行业开发出更适应猎头的软件就拥有更多的技术竞争里,所以,抢先涉及猎头领域是我们成功的前提,而怎样开发好更好的软件是我们成功的关键。目前国内主流的软件开发基于两种模式:客户机/服务器(Client/Server,简称C/S)模式和Web浏览器/服务器(Browser/Server,简称B/S)模式。虽然出于安全性等方面的因素,C/S结构的管理信息系统仍然占据企业管理信息系统的主流,但是,由于B/S系统更适合维护,而且起安全性正在不断完善,所以当前企业信息管理系统正在从C/S结构向B/S结构转移。而现在开发B/S系统的主流技术就是ASP.net和JSP,虽然ASP.net为新兴技术正不断抢占JSP的市场,但出于系统的移植性的考虑,本系统还是运用JSP技术开发,因为JAVA的跨平台性能给我们带来更多的用户。服务器上我们选择Tomcat,是因为它小巧却功能强大,更重要的是,它是开源的,如今,开源软件越来越受到人们的重视,Linux就是一个成功的典型,虽然这对我们的开发没有实际的用处,但是顾客会优先选择用流行工具开发的软件,这也是我们选择Tomcat的原因。现在主流的数据库就三种:Access, Oracle和SQL Server。Access短小精干,操作方便,是开发小型系统的首选;Oracle功能强大,适合开发大型系统;但是我们选择SQL Server,它兼备Access和Oracle优点,强大的可视化操作和不亚于Oracle的功能是我们选择它的理由。3 需求分析及设计方案3.1 需求分析根据客户的需要,本软件系统是猎头公司内部管理系统,用户仅限于公司内部员工,需求功能主要是员工或者公司的管理层能通过软件系统,进行一系列的操作,从而实现管理公司的目的,下面是具体的需求:(1)既然软件系统的用户仅限于公司内部的员工,所以就必须要有判断是否内部员工的功能。(2)员工应该能从软件系统上了解到公司内部的新闻和通知,并且公司的管理层应该有发布和修改的功能。(3)有一些突发事件随时有可能发生,如地址和联系方式的变化,这就要求员工能通过系统对自己的一些资料进行修改。(4)员工不可能记的住公司每个人的地址、联系方式等,所以要有通过查询得知其他员工一些资料的功能。(5)公司随时都可能根据发展计划进行新员工的加入和老员工的退出,这就要公司的管理层能通过软件系统随时录入和删除员工的资料。(6)既然是管理软件,其主要功能还是公司的管理层能通过软件系统对公司的管理,如财务部的能从系统的计算结果得知每个人的薪金,人事部能随时通过系统调出员工的资料,每个部门的管理者都能对自己部门的员工的业绩进行操作等等。3.2 设计方案3.2.1 模块的划分需求分析是从客户的需求中提取出软件系统能够帮助用户解决的业务问题,而设计方案则是根据需求分析,规划出系统的功能模块,具体的划分如下:1公共模块2用户登录模块3系统主页模块4公司新闻模块5公司通知模块6用户对自己资料的操作模块7查询模块8各部门高层对本部门员工的操作模块9工资计算模块如图1所示:猎头管理系统用户资料操作模块部门员工操作模块查询模块工资计算模块公共模块用户登录模块系统主页模块公司新闻模块公司通知模块图1 猎头管理软件功能模块示意图3.2.2 详细设计软件系统主要是公司的管理层对公司的管理,但是也有一般员工通过系统获取同事的资料和公司的通知,而且就算公司的管理层也有职位的不同,所以权限的设计就成为必然,然后就是数据的不同,有些数据只要是公司员工就能看到,而还有写数据却只有管理层才能看到,所以数据要进行数据的分类,而把两者结合在一起就是通过权限的判断,不同的权限看到的数据不一样,不同的权限的对数据的操作也不一样,这是本系统的核心。1权限设计根据系统具体要实现的功能把所有员工分为三种权限,分别是一颗星,两颗星和三颗星,映射着不同的职位,下面是详细说明:(1)一至三颗星部门经理职位以下的员工都在此权限,在此权限的员工能看见和操作的数据包括:能获取公司的新闻和通知;能看到自己的一些资料,并能查询到自己的薪金;能修改自己的一些资料,如地址、联系方式等;能通过一个搜索条,搜索到其他员工的公开资料。(2)四颗星各部门的部门经理或其授权的系统管理员为四颗星权限,在此权限的员工能看见和操作的数据包括:所有一颗星权限的操作;能发布新闻和通知,并能对自己发布的进行修改和删除的操作;能查看所有员工的公开资料和保密资料;能对自己部门的员工资料进行操作;并且四颗星权限内,只有财务部部门经理或起授权的系统管理员,才能看到所有员工的薪金。(3)五颗星总经理、懂事长等高于部门经理职位的员工或其授权的系统管理员为五颗星权限,在此权限的员工能看见和操作的数据包括:所有两颗星的操作;能对所有的新闻和通知进行修改和删除的操作;能对所有部门的员工资料进行任何操作;能看到所有员工薪金。2数据分类系统数据主要分为两类:员工资料和公司的新闻通知。以下是详细的说明:(1)员工资料系员工资料又分为两类,公开资料和保密资料:公开资料是诸如姓名、性别、部门、职务、地址、联系方式等一些所有员工都能看到的数据。保密资料包括公司管理层对员工的评价、备注,员工的详细简历等一些详细的资料,还有就是员工的业绩和薪金。这些资料都是公司的管理层才能看到,也只有公司的管理层才能对其操作。(2)新闻通知新闻通知是公司的新闻和一些诸如开会、比赛等的通知。所有员工都能看到这些数据,但只有公司的管理层才能对其操作。商业源代码,全套计算机免费下载 ibaidusoft更多全套设计联系QQ:1042897696最新设计大全 bylw168/sf/20XX0915/3539.4 具体流程及实现4.1 具体流程4.1.1 登录用户登录通过后根据登录ID查询数据库并返回用户权限,根据用户的权限显示主页,不同的权限做看到的主页不同。4.1.2主页1四颗星以下权限员工所看到的页面最上面有一个退出登录的链接,点击回到“登录”页面能看到一个搜索条,通过搜索链接到“个人详细资料” 页面,查看被搜索员工的公开资料。可以看到一些自己的资料,并在下面有二个链接:查看详细资料和修改个人资料,点击分别进入“个人详细资料”和“修改个人资料”的页面,查看自己的详细资料、工资,修改自己的联系方式等。能看到公司最新的通知,下面有一个查看以往通知的链接,点击进入“所有通知”页面查看所有通知。能看到公司最新的10条新闻的标题,点击标题就能进入“新闻内容”的页面,下面有一个所有新闻的链接,点击进入“所有新闻”页面查看所有新闻。2四颗星以上权限员工所看到的页面所有一颗星权限员工能看到的数据。能在最上面的标题图片下面看到一个各部门的菜单,列出了所有部门的链接,无论点击哪个都会进入“部门员工清单”页面。也能通过搜索条搜索员工,但是链接到“员工详细资料”页面。有一个添加员工和员工业绩的链接,点击进入“添加员工”页面和“员工业绩”页面。能看到发布通知和添加新闻的链接,点击进入“发布通知”和“添加新闻”页面。只有财务部的四颗星员工和五颗星员工才能看到员工薪金的链接,点击进入“员工薪金清单”页面。4.1.3 各功能模块页面(1)“个人详细资料”页面显示员工的公开资料。(2)“修改个人资料”页面修改自己的联系方式和地址。(3)“所有通知”页面在页面的左边部分列出了所有通知的发布时间,点击时右面便显示点击消息的内容。(4)“新闻内容”页面显示新闻的发布人,发布时间和内容。(5)“所有新闻”页面在页面左边部分列出了所有新闻的标题,点击时右面变显示点击新闻的内容。(6)“部门员工清单”页面根据链接来是所传来的部门的参数显示部门所有员工的一个清单,每个员工仅显示了编号、姓名、性别、部门四个资料,在每个员工后面还有一个详细资料的链接,点击进入“员工详细资料”页面。如果登录的是两颗星权限,并且登录者的部门和显示页面的部门一致的情况下或者登录的是三颗星权限的情况下,那么便会在每个员工的最后面看到一个删除的链接,点击删除此名员工的所有资料。(7)“员工详细资料”页面显示员工所有的资料,包括公开资料和保密资料。如果登录的是两颗星权限,并且登录者的部门和所显示员工的部门一致的情况下或者登录的是三颗星权限的情况下,就会在下面看到一个修改的链接,点击进入“修改员工资料”页面。(8)“修改员工资料”页面修改员工的资料。(9)“添加员工”页面当新员工加入的时候添加员工。(10)“发布通知”页面发布通知。(11)“添加新闻”页面添加新闻。(12)“员工业绩新闻”页面各部门的部门经理,对所属员工的业绩进行加减。(13)“员工业绩新闻”页面财务部的部门经理和公司部门经理以上职位的能人看到公司所有人当月薪金。如图2所示:个人详细资页面登录修改个人资料页面料所有通知页面新闻内容页面所有新闻页面部门员工清单页面员工详细资料页面修改员工资料页面填加员工页面发布通知页面添加新闻页面主页员工业绩页面员工薪金清单页面图2 猎头管理软件流程图4.2 实现4.2.1 数据库的设计1创建数据库首先在 SQL Server 2000 的企业管理器中创建一个名为 manager 的数据库。2创建表数据库 manager 包含 7 个表:员工权限表(userpassword)、员工公开资料表(public_userdata)、员工保密资料表(interior_userdata)、公司理念表(_idea)、新闻表(news)、通知表(notice)、员工业绩表(contribution)。详细如下:(1)员工权限表员工权限表(userpassword)用来保存每个员工的登录帐号、口令和登录权限,结构如表1:表1 员工权限表(userpassword)编号字段名称数据结构说明1USERIDvachar(7)员工编号(主键)2PASSWORDvarchar(7)登录密码3JURISDICTIONvarchar(10)员工权限(2)员工公开资料表员工公开资料表(public_userdata)用来保存每个员工的公开资料,结构如表2:表2 员工公开资料表(public_userdata)编号字段名称数据结构说明1USERIDvachar(7)员工编号(主键)2USERNAMEvarchar(10)员工姓名3SEXvarchar(2)员工性别4DEPARTMENTvarchar(10)所属部门5DUTYvarchar(10)员工职务6TELvarchar(30)联系电话7E_MAILvarchar(50)E_mail8ADDRESSvarchar(50)地址(3)员工保密资料表员工保密资料表(interior_userdata)用来保存每个员工的保密资料,结构如表3:表3 员工保密资料表(interior_userdata)编号字段名称数据结构说明1USERIDvachar(7)员工编号(主键)2ADDDATEvarchar(10)加入公司时间3DOCUMENTvarchar(8000)员工档案(4)公司理念表公司理念表(_idea)用来保存公司的理念,结构如表4:表4 公司理念表(_idea)编号字段名称数据结构说明1IDint(4)理念序号,标识种子,增量1(主键)2TITLEvarchar(100)理念标题3BODYvarchar(8000)理念内容4ADDDATEvarchar(50)加入日期5ADDUSERvarchar(10)加入员工姓名(5)新闻表新闻表(news)用来保存公司的新闻,结构如表5:表5 新闻表(news)编号字段名称数据结构说明1IDint(4)新闻序号,标识种子,增量1(主键)2TITLEvarchar(100)新闻标题3BODYvarchar(8000)新闻内容4ADDDATEvarchar(30)加入日期5ADDUSERvarchar(10)加入员工姓名(6)通知表通知表(notice)用来保存公司的通知,结构如表6:表6 通知表(notice)编号字段名称数据结构说明1IDint(4)通知序号,标识种子,增量1(主键)2CONTENTvarchar(1000)通知标题3ADDDATEvarchar(30)加入日期4ADDUSERvarchar(10)加入员工姓名(7)员工业绩表员工业绩表(contribution)用来保存员工每月的业绩,结构如表7:表7 员工业绩表(contribution)编号字段名称数据结构说明1USERIDint(4)员工编号2CONTRIBUTIONint(4)员工业绩3DATEvarchar(10)当月日期3数据库的连接在实现各个模块之前,首先要建立与数据库 manager 的连接,因为在系统中,这个操作非常频繁,所以我把它写成了两个 javabean : DBConnection.class 和 DBSQL.class,下面是详细的说明:DBConnection.class 是用 JDBC 建立与数据库的连接,具体代码如下:public class DBConnectionprivate String driverName =.microsoft.jdbc.sqlserver.SQLServerDriver; /驱动名称private String url =jdbc:microsoft:sqlserver:/localhost:1433;databaseName=manage; /驱动路径private String user = sa; /数据库用户名private String password = sa; /数据库密码public Connection getConnection() try Class.forName(driverName); /加载驱动 return DriverManager.getConnection(url, user, password); /建立连接 catch (Exception e) e.printStackTrace(); return null; DBSQL.class 通过调用 DBConnection.class 的对象建立与数据库的连接,然后执行传来的 SQL 语句,返回操作的结果集,代码如下:public class DBSQLprotected Connection conn = null;/Connection对象protected Statement stmt = null;/Statement对象protected ResultSet rs = null;/记录结果集protected String sqlStr;/SQL语句public DBSQL() trysqlStr = ;DBConnection dcm = new DBConnection(); /实例 DBConnection 对象conn = dcm.getConnection(); /获得连接stmt = conn.createStatement(); /获取执行 SQL 语句命令对象catch (Exception e) System.out.println(e);public Statement getStmt() return stmt;public Connection getConn() return conn;public ResultSet getRs() return rs;public void setSqlStr(String newSqlStr) /获得SQL语句this.sqlStr=newSqlStr;public String getSqlStr() return sqlStr;public void executeQuery() throws Exceptionrs = stmt.executeQuery(sqlStr); /记录结果集public void executeUpdate() throws Exceptionstmt.executeUpdate(sqlStr); /执行 SQL 语句public void close() throws SQLException /关闭数据库连接if ( stmt != null ) stmt.close();stmt = null;conn.close();conn = null;4.2.2 界面的设计猎头公司管理软件由9个模块13个前台显示界面、14个后台操作页面和5个公共页面组成,因受篇幅所限,仅给出部分模块的设计和代码。1公共模块公共模块是各个模块都可能用要的,在本系统中公共模块主要包括整个系统都要用到的图片和一些公共的调用,如对系统当前时间的读取,把它写到公共页面里,每次只要把公共页面包括进去,直接读取时间变量就行,具体实现的代码如下:java.util.Date cur_time = new java.util.Date();/读取系统当前时间SimpleDateFormat formatter = new SimpleDateFormat(yyyy-MM-dd);/定义读取时间格式String dateString = formatter.format(cur_time);/付值给变量2用户登录模块用户登录界面(login.jsp)用于员工的登录,主要功能用于判断用户输入的登录名和密码是否合法。界面如图3:图3 猎头管理软件登录界面图当用户输入不合法的用户或者密码的时候,就会弹出错误对话框,在本系统,将用户和密码的规则都设为七位,所以当没有输入或者输入错误的时候就会弹出提醒对话框,此功能的实现是在前台登录的jsp页面嵌入一个javascript,具体的代码如下: /用javascript判断用户的输入是否合法function checkform()if (form.userid.value.length!=7)alert(请输入正确的编号!);form.userid.focus();return false;if (form.password.value.length!=7)alert(请输入正确的密码!);form.password.focus();return false;return true;通过在登录表单设置onClick属性来调用上面的javascript,具体代码如下:当用户输入完毕点击登录按钮后,就会跳转到后台的检查页面,检查页面的功能是,通过用户输入的用户名和密码作为参数,到数据库里面去查找是否有匹配的项,如果有,则登录成功,跳转到系统主页面;如果没有,则返回登录页面,并显示用户名或密码错误。然后将登录状态设置为真,具体是通过给Session付值来实现具体代码如下:String userid = new String(request.getParameter (userid).trim().getBytes(ISO-8859-1);String password = new String(request.getParameter (password).trim().getBytes(ISO-8859-1);/接受从用户输入的用户名和密码String sql = SELECT * FROM userpassword WHERE USERID=+userid+ AND PASSWORD=+password+;/通过用户名和密码在userpassword表中寻找是否有匹配项DBSQL dbsql = new DBSQL();/连接数据库dbsql.setSqlStr(sql); dbsql.executeQuery();/执行SQL语句ResultSet rs = dbsql.getRs();/返回结果集if (!rs.next() /判断登录用户和密码在数据库里是否存在 String errmsg=error1; response.sendRedirect(login.jsp?errmsg=+errmsg);/不存在则返回登录页面,并提示错误 return; request.getSession(true);/存在则设置登录状态为真String chk=true;session.putValue(Enter,chk);session.putValue(userid,userid);/记录登录用户的用户名response.sendRedirect(index.jsp);/登录成功,跳转到主页面3系统主页模块系统主页面(index.jsp)是员工进入系统后的一个操作索引,所有的操作都从这里开始,在此页面中,对权限的判断十分重要,不同权限的员工所看到的界面是不一样的,详细如下:四颗星以下权限的员工登录后所看到的界面如图4:图4 猎头管理软件主界面界面图四颗星以上权限的员工登录后所看到的界面如图5:图5 猎头管理软件主界面界面图不同权限员工看到的不同界面主要是部门菜单显示和非显示,具体的实现是用java代码实现的,具体如下: a href=userlist.jsp?department=人事部 a href=userlist.jsp?department=后勤部 a href=userlist.jsp?department=财务部 a href=userlist.jsp?department=业务部 a href=userlist.jsp?department=技术部 员工业绩 员工薪金 添加员工 4查询模块查询模块是方便公司员工查询其他员工的一些资料而设计的,这也涉及到权限问题,一般员工的登录权限只能查询其他员工的公开资料,而管理层的登录权限不仅可以查询到公开资料,也能查询保密资料,这个功能是根据登录者的权限点击链接时,跳转到不同的显示页面来实现的。一般员工查询的跳转页面如图6:图6 员工公开资料界面图公司管理层查询的跳转页面如图7:图7 员工所有资料界面图代码如下:String userid=(String)session.getValue(userid);/获取登录者用户名String sql=SELECT * FROM userpassword WHERE USERID =+userid+;DBSQL dbsql = new DBSQL();dbsql.setSqlStr(sql);dbsql.executeQuery();ResultSet rs=dbsql.getRs();rs.next();String jurisdiction=new String(rs.getString(JURISDICTION);/根据用户名查询数据库,得到登录权限String username = new String(request.getParameter(keyword).trim().getBytes(ISO-8859-1);/获取用户输入的查询关键字sql = SELECT * FROM public_userdata WHERE USERNAME=+username+;dbsql.setSqlStr(sql);dbsql.executeQuery();rs=dbsql.getRs();/根据关键字查询数据库if (!rs.next()/ 判断是否有此人 out.println(没有此人!); elseif(jurisdiction.equals(*)|jurisdiction.equals(*)/判断登录权限response.sendRedirect(particularuser.jsp?userid=+rs.getString(USERID);/四颗星以上登录权限者跳转到particularuser.jsp页面查看被查询者资料elseresponse.sendRedirect(usermessage.jsp?userid=+rs.getString(USERID);/其他登录权限的则跳转到usermessage.jsp页面查看被查询者资料5薪金计算模块员工每月薪金的计算是和员工的职务与业绩分不开的,而职务和员工的权限又是成正比的,所以和薪金相关的就是员工的权限与业绩,员工的权限
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省任丘市2025年上半年公开招聘村务工作者试题含答案分析
- 贵州省赫章县2025年上半年公开招聘村务工作者试题含答案分析
- 2025年事业单位国防动员笔试模拟试卷
- 灌装生产工厂知识培训课件
- 城市空间权力机制-洞察及研究
- 网络流量调度-洞察及研究
- 知识变现培训资质要求课件
- 知识分享保姆培训课件
- 知识付费派培训课件
- 铁煤集团安全知识培训课件
- EPC工程总承包招标
- 劳务施工组织方案 劳务施工组织设计(八篇)
- 抗菌药物合理使用培训测试题(答案)
- 青藏铁路公司普速铁路维修管理办法
- 《卷烟原料配方设计》配套教学课件
- 消防技术装备培训课件
- 《新能源汽车驱动电机系统检测与维修习题册》 习题参考答案(劳动)
- 介入诊疗质量安全计划与指标
- 99S203 消防水泵接合器安装图集
- 苗圃规章制度范本
- 响水县粮食购销总公司大有粮库粮食烘干设备招标采购
评论
0/150
提交评论