基于Springboot和Mysql实现的大学生招聘网站系统

到山东找蓝翔

发布日期: 2021-09-19 09:55:26 浏览量: 218
评分:
star star star star star star star star star star_border
*转载请注明来自write-bug.com

1.项目简介

1.1 系统研究背景

伴随着中国经济的飞速发展,城市化进程的加快,求职者队伍的不断壮大,传统人才招聘的弊端初露端倪。首先,传统人才应聘的形式是求职者和企业的负责人面对面地交流。这就需要企业和求职者提前规划自己的时间,准备大量的纸质材料,并选好举办招聘会的地点,这一系列流程都需要双方把大量的精力投入到准备活动中去,使得应聘还未开始,成本就已大幅增加。其次,企业在筛选数以百计,甚至数以万计简历的时候,往往会由于阅读疲劳,漏掉一些真正有价值的简历,使得企业丧失掉一批有用的人才。对于求职者而言,也会错失掉良好的机会,令人惋惜。

随着国内互联网飞速的发展,人们已经越来越习惯于使用互联网传递信息,接收信息,利用互联网技术使得自己的生活更加便利,快捷。在这样一种大趋势下,网上人才招聘系统出现在了人们的眼前。而且由于网络招聘较传统招聘具有多项优势,越来越多的求职者选择网络求职成为自己的应聘方式。

1.2 系统研究意义

本系统开发的意义一方面在于突破传统人才招聘的模式,给招聘者和求职者提供一个便利、高效、准确的网络招聘平台,使得双方可以在把成本降到最低的前提下,在更快的时间获得更加准确的信息,从而满足企业的用人需求,实现求职者的自我价值。另一方面在于完善网络招聘服务工作,建立服务体系,通过对用户需求的研究,开发出更符合实际应用的软件。

1.3 开发环境

  • 操作系统:Windows10

  • 数据库版本:Oracle10g XE

  • JDK版本:JDK1.8

  • 服务器版本:apache-tomcat-8.0.24-windows-x64

1.4 技术栈

  • 后端 :Java、Springboot、redis、MyBatis

  • 前端:HTML+CSS实现页面布局,部分功能使用Jquery和Ajax减轻服务器端的压力

2.系统设计

2.1 系统设计模块

2.2 功能模块

  • 个人用户:注册,登录,修改密码

  • 个人信息管理:查看,修改个人信息

  • 求职信息管理:修改自己的求职信息;发布自己的求职信息

  • 简历管理:查看,修改简历信息

2.3 数据库设计

2.3.1 表结构

公司表

公司管理员表

公司收到简历表

用户表

获奖表

职位表

项目经验表

简历表

简历投递记录表

专业技能表

工作经验表

2.3.2 E-R图

3.系统实现

3.1 业务代码

  1. /**
  2. * @param username 手机号/邮箱
  3. * @param password 密码
  4. * @param userType 0手机号;1邮箱
  5. * @return 结果集
  6. */
  7. @Override
  8. public ServerResponse getByUsernameAndPwd(String username, String password, Integer userType) {
  9. CustomerExample example = new CustomerExample();
  10. CustomerExample.Criteria criteria = example.createCriteria();
  11. criteria.andStatusEqualTo(0);
  12. if (userType == 0)
  13. criteria.andCustTelnoEqualTo(Long.valueOf(username));
  14. else
  15. criteria.andCustEmailEqualTo(username);
  16. criteria.andCustPasswordEqualTo(password);
  17. List<Customer> customerList = customerMapper.selectByExample(example);
  18. if (customerList != null) {
  19. if (customerList.size() == 1)
  20. return ServerResponse.getSuccess(customerList.get(0));
  21. else if (customerList.size() > 1)
  22. return ServerResponse.getFailed("用户异常,请联系管理员");
  23. }
  24. return ServerResponse.getFailed("用户名/密码错误,请重试");
  25. }
  26. @Override
  27. public ServerResponse add(Customer customer) {
  28. customer.setCustRegistTime(new Date());
  29. customer.setStatus(0);
  30. int rows = customerMapper.insert(customer);
  31. if (rows > 0)
  32. return ServerResponse.addSuccess();
  33. return ServerResponse.addFailed();
  34. }
  35. @Override
  36. public ServerResponse getByTelno(Long custTelno) {
  37. CustomerExample example = new CustomerExample();
  38. example.createCriteria().andCustTelnoEqualTo(custTelno).andStatusEqualTo(0);
  39. List<Customer> customerList = customerMapper.selectByExample(example);
  40. if (customerList != null && customerList.size() > 0) {//找到用户了
  41. return ServerResponse.getSuccess(customerList.get(0)); // 1,"查询数据成功",customer
  42. } else // 用户不存在
  43. return ServerResponse.getFailed("用户不存在"); // 0,"查询数据失败","用户不存在"
  44. }

3.2 前端代码

  1. <%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
  2. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  3. <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
  4. <link rel="stylesheet" href="${pageContext.request.contextPath}/css/navigate.css">
  5. <div id="index_head">
  6. <div id="logoInfo">
  7. <div id="address">
  8. <img id="addressimg" src="${pageContext.request.contextPath}/images/jkf_imgs/address.svg" alt="苏州">
  9. <span>当前城市[<span id="addresssp"></span>]</span>
  10. </div>
  11. <ul id="home">
  12. <li><a href="${pageContext.request.contextPath}/">首页</a></li>
  13. <li><a href="${pageContext.request.contextPath}/job/jobInfo">职位</a></li>
  14. </ul>
  15. <c:if test="${sessionScope.loginCustomer==null}">
  16. <div class="loginPart">
  17. <ul>
  18. <li>
  19. <a href="${pageContext.request.contextPath}/login">投递记录</a>
  20. </li>
  21. <li>
  22. <a href="${pageContext.request.contextPath}/login">简历</a>
  23. </li>
  24. <li>
  25. <a href="${pageContext.request.contextPath}/login" class="clickBtn">登录</a>
  26. </li>
  27. <li>
  28. <a href="${pageContext.request.contextPath}/register" class="clickBtn">注册</a>
  29. </li>
  30. </ul>
  31. </div>
  32. </c:if>
  33. <c:if test="${sessionScope.loginCustomer!=null}">
  34. <div class="loginPart">
  35. <ul>
  36. <li>
  37. <a href="${pageContext.request.contextPath}/customer/center/2">投递记录</a>
  38. </li>
  39. <li>
  40. <a href="${pageContext.request.contextPath}/customer/center/1">简历</a>
  41. </li>
  42. <li>
  43. <a href="${pageContext.request.contextPath}/customer/center/0">
  44. <span class="label-text">${sessionScope.loginCustomer.custName}</span>
  45. <%--<img src="" alt="用户头像">--%>
  46. </a>
  47. </li>
  48. <li>
  49. <a href="${pageContext.request.contextPath}/customer/logout">退出登录</a>
  50. </li>
  51. </ul>
  52. </div>
  53. </c:if>
  54. </div>
  55. </div>
  56. <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=f33ff318925b81fd4f3773c5a1efa107&plugin=AMap.CitySearch"></script>
  57. <script type="text/javascript">
  58. var map = new AMap.Map("container", {
  59. resizeEnable: true,
  60. center: [116.397428, 39.90923],
  61. zoom: 13
  62. });
  63. //获取用户所在城市信息
  64. function showCityInfo() {
  65. //实例化城市查询类
  66. var citysearch = new AMap.CitySearch();
  67. //自动获取用户IP,返回当前城市
  68. citysearch.getLocalCity(function(status, result) {
  69. if (status === 'complete' && result.info === 'OK') {
  70. if (result && result.city && result.bounds) {
  71. var cityinfo = result.city;
  72. var citybounds = result.bounds;
  73. document.getElementById('addresssp').innerHTML = cityinfo;
  74. //地图显示当前城市
  75. map.setBounds(citybounds);
  76. }
  77. } else {
  78. document.getElementById('addresssp').innerHTML = result.info;
  79. }
  80. });
  81. }
  82. showCityInfo();
  83. </script>
  84. <script>
  85. let ROOTSources = "${pageContext.request.contextPath}";
  86. </script>

4.项目展示

登录

主页

职位详情

公司简介

投递记录

编辑简历

简历列表

申请职位

5.总结

第一次接触实际项目遇到使用新的开发工具感觉很陌生,移动web开发也是第一次接触,对开发工具的陌生情况下也遇到很多问题,比如说HBuilderX移动web开发工具在手机上调试遇到的问题,必须搭建iis服务器以及HBuilderX在局域网必须要同一级IP,否则链接不了,手机调试不了。公司实际项目都是以团队开发,团队协调很重要,比如说每个人使用不同的用户登录进行开发不同模块的功能,从而删除别的开发人员的相关的数据,导致每个使用到这个用户的数据混乱。

最重要是数据库设计,数据库不是我们设计,对于数据库设计的人设计出来的任务逻辑出现各种各样问题,不符合业务逻辑需求,从而导致项目进度拖慢。UI设计也是我们的弱项,没有用专门去研究过UI设计风格以及设计视觉原理,从而导致项目开发进度拖慢。IM即时聊天要求也比较高,也是对于初次开发要对网络编程十分了解,需要耗费很多时间,从而导致项目开发进度拖慢。在开发过程遇到这些问题,我就可以知道自己的弱点以及开发中必须要用到的一些常用的技术。比如说MUI框架、Amaze UI框架、Frozen UI框架、SUI框架、ZUI框架、H-ui框架、UIkit框架、Bootstrap框架、Plane UI框架、WeUI框架等移动web的前端框架,对框架使用是否熟悉;接着图片的上传和下载,对流操作熟悉。

上传的附件 cloud_download 设计文档.docx ( 1.83mb, 3次下载 ) cloud_download recruitment-website-master.zip ( 14.76mb, 4次下载 )

发送私信

会冒泡的可乐

153
文章数
12
评论数
最近文章
eject