# 基于springboot2+vue2.X的校园招聘系统
系统源码可以完美运行,系统的视频非常详细,详细地讲解了系统的功能编写。
## 1.系统简介
该系统基于springboot2,vue2.X等技术实现了校园招聘系统,为求职者与招聘人员提供了便捷的在线招聘信息平台。
### 1.1 系统环境配置
* 系统开发平台:JDK1.8+Windows7+Maven3.6.1
* 开发语言:JavaEE+vue
* 后台框架:Springboot
* 前端:Vue2.9.6
* 数据库:MySql5.7
* 开发环境: Intelij Idea
* 浏览器: Chrome或360浏览器
### 1.2 系统搭建步骤
前置条件:系统已经安装了Mysql5.7,Mysql工具(Navicat),JDK1.8,Maven3.6.1,vue3.0以下开发环境,Intelij Idea,Chrome或360浏览器
* 导入数据库
* 编译前端代码vue:编译(cnpm install),试运行(npm serve)
* 导入后端代码springboot
* 启动springboot
### 1.3 首页
位于首页最上方的是导航栏,系统导航栏有:首页,招聘信息,求职者信息,友情链接,留言板,后台管理,登录
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/182903_15f2074b_7604956.png "屏幕截图.png")
导航栏下方是一个轮播图轮放图片,再往下是首页展示的招聘信息,求职者信息,新闻资讯等简略的内容,都可以点击查看更多来查看详细内容,该按钮对应导航栏的相应内容
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/183659_e8a39d38_7604956.png "屏幕截图.png")
首页的最下方是留言面板,需要登录才能留言
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/183741_a99d228a_7604956.png "屏幕截图.png")
### 1.4 招聘信息
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/183831_e8e53008_7604956.png "屏幕截图.png")
### 1.5 求职者信息
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/184037_60026e14_7604956.png "屏幕截图.png")
### 1.6 友情链接
可以和哪些网站进行互相链接访问
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/184103_6d515200_7604956.png "屏幕截图.png")
### 1.7 留言板
位于首页底部,登录的用户可以进行留言,管理员可以在后台查看留言。
### 1.8 后台管理
在个人中心点击我的后台或者直接在导航栏点击后台管理即可进入后台页面
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/204020_a21697f5_7604956.png "屏幕截图.png")
### 1.9 登录
登录分为用户登录和企业以及管理员登录
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/185136_e4944e14_7604956.png "屏幕截图.png")
管理员功能:用户管理,企业信息管理,岗位分类管理,学历信息管理,友情链接管理,系统管理,我的收藏管理,管理员管理,招聘信息管理等
用户功能:见个人中心
企业功能:招聘信息管理,应聘信息管理等
### 1.10 个人中心
登录之后导航栏会出现个人中心,点击可以查看个人信息,提供查看后台/退出登录/修改密码/修改个人信息等功能
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/184813_bcf76671_7604956.png "屏幕截图.png")
## 3. 导入后端代码并启动
启动IDEA,点击configure-settings
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/190753_47298c80_7604956.png "屏幕截图.png")
找到maven配置界面(Build,Execution,Deployment—Build tools—maven),更改如下三个配置,改为自己电脑maven的位置即可
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/190817_ad5d67cc_7604956.png "屏幕截图.png")
点击ok,返回idea启动界面,点击open,找到项目位置,点击确定后等待项目下载依赖的包
点击pom.xml文件,查看文件是否有错误,如果有错误显示的是红色,如下错误,删除version行即可
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/191417_3f24f4aa_7604956.png "屏幕截图.png")
在pom.xml文件中点击鼠标右键-maven-reimport,强制自动重新加载
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/191545_857f7310_7604956.png "屏幕截图.png")
点击src-main-resources-application.yml,初始设置的端口号为8080,如果被占用则修改
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/191728_e065e991_7604956.png "屏幕截图.png")
确认数据库连接信息
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/191757_d40daba4_7604956.png "屏幕截图.png")
在src-main-java-com目录下找到SpringBootSchemaApplication.java,这是程序的启动类,点击鼠标右键,以debug方式启动程序
![输入图片说明](https://images.gitee.com/uploads/images/2020/1218/192030_16b37bd1_7604956.png "屏幕截图.png")
打开localhost:8080/springbootjlvpC/front/index.html访问前端页面,如果能看到页面,说明项目启动成功!
## 4. 框架介绍
### 4.1 pom.xml
相当于传统项目里面的jar包集合,使用maven导入项目,项目下的pom.xml是jar包的管理文件
### 4.2 项目层次
** controller**:调用service层
** dao**:包含数据库访问接口
** service**:包含接口和实现类
## 5. 后台vue架构
**启动后台**
定位到src/main/resources/admin.admin,右键点击admin.admin,选择show in explorer
切换到文件目录后,点击admin,进入admin文件夹内部
打开命令提示符窗口,定位到当前目录
执行**npm run serve
等待启动成功!
访问localhost:8081可以访问后台首页
8081端口在如下文件中指定:
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/172614_029dc073_7604956.png "屏幕截图.png")
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/172255_653d02a4_7604956.png "屏幕截图.png")
**注意事项**:确保已经执行安装,admin目录下有node_moudles文件夹
**main.js文件**
文件路径:src/main/resources/admin.admin/src/views/main.js
功能:整个vue项目的入口文件,引入了非常多的插件以供使用
从网页进入8081端口后会根据你是否登录进行相应的页面跳转,如果登录且登录没有过期会返回一个TOKEN给程序后台,返回上次关闭的页面,如果没有登录就直接进入登录页面
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/174722_6115b91e_7604956.png "屏幕截图.png")
## 6. 后台登录功能
**login.vue**
登录界面的背景图片相对路径的img文件夹下bg.jpg
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/175249_517cd476_7604956.png "屏幕截图.png")
rulesform定义了登录界面登录框的内容
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/175459_86c64f1c_7604956.png "屏幕截图.png")
账号的内容用到了v-model,即vue中的双向绑定,当账号的值在任何一个地方变化时会直接反馈回来
下面的代码对menu列表进行遍历,menu列表定义在页面启动之后进行加载,是一个长度为3的数组,可以使用json.com进行在线解析menu.js中的内容
el-radio为单项选择按钮,对登录身份进行选择
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/180124_ec378e22_7604956.png "屏幕截图.png")
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/180021_bb1af54d_7604956.png "屏幕截图.png")
注册用户与注册信息按钮中的@click意思是如果点击这两个选项的话会将相应的参数传到注册的函数register中
最下面是登录按钮,@click中绑定了login()函数,login函数执行逻辑可以参见视频
![输入图片说明](https://images.gitee.com/uploads/images/2020/1219/182138_25b7