招聘网站[源码+前后端页面]
毕业设计免费开源系列:
Java旅游网站源码+页面(景点查看、评论、酒店查看、预定,旅游线路推荐...)
Java招聘网站源码+页面(职位查看、评论、简历发布、投递、结果、企业管理,职位推荐...)
在线预览:招聘网站
账号:应聘者,密码:123
管理员账号:admin,密码:123
- Github开源地址:https://github.com/jwwam
- 下载 or 部署问题请加QQ:824247231
- 这是一个免费、轻量化、简单、易上手的招聘网站项目,系统包括完整的前端HTML页面和后台代码,该项目适合作为JavaWeb入门或毕业设计使用,且具备一定的实用价值,项目中涉及皮尔逊相关系数的相似度算法Java实现和实际应用可查看职位推荐模块。
- PS:本人承接毕业设计制作,有意请联系我,划至页面底部获取我的联系方式。
- 以下请您仔细阅读:这个项目设计简洁明了,使用体验良好,底层应用的实现代码也很简单,但是在部署方式上可能需要耗费一定的精力才能跑起来,其实这对于每一个项目来说都是如此,相信找到这个项目的小伙伴大多是即将毕业的同学,如果您只是想毕业交差然后另谋他路请直接略过此段往下看,或者建议您找淘宝或者我帮你远程部署,花钱买时间永远是最划算的买卖(恰饭时间O(∩_∩)O),您大可利用多余的时间去做更有意义的事情。但是如果您毕业后从事编程相关的工作,请一定仔细食用这个项目,相信你一定会有所收获。一个系统从设计到实现是一个非常复杂的过程,这个项目算不上牛逼但是带你入门足够了,项目用到的算法也不算牛逼但是面试吹牛也足够了,以上。
Project description-项目描述
- 此项目采用ssm/ssh架构设计实现
- 升级后的版本底层所有代码已全部重写
- 项目采用前后端分离架构
- RESTful API风格接口化、Json形式数据传输
- 前端采用主流框架Vue,同时也提供基础版本(HTML+CSS+jQuery),以减轻初学者上手难度
- 引入皮尔逊线性相似度推荐算法的Java实现,应用于项目的“职位推荐”栏目
Project framework-项目架构
- 采用前后端分离,Vue?+ Java
- ORM使用MyBatis/SpringDataJPA
- 数据库使用MySql5.7+Mongodb3
- 缓存Redis
- 部署Nginx+Jar
Project algorithm-相关算法
-
皮尔逊相关系数的相似度算法(Pearson) -
以下给出其实现公式:
@Override
public List<Job> findRecommendList(String id) {
//系统中我将职位抽象成了产品,这样便于扩展,如企业、HR等均可看作产品评分,统一记录在系统的分数表中
//如果是查询职位推荐列表,则根据入参职位id查询职位
List<Score> productScoreList = scoreDao.findByProductId(id);
double[] ownProductScoreList = new double[productScoreList.size()];
for (int i = 0; i < productScoreList.size(); i++) {
ownProductScoreList[i] = Double.parseDouble(productScoreList.get(i).getGrade());
}
//得到分数表中所有职位的分数集合
List<Score> productCountInScoreList = scoreDao.findAllGroupByProductId();
HashMap<String,double[]> ss = new HashMap<String,double[]>();
for (int i = 0; i < productCountInScoreList.size(); i++) {
List<Score> bb = scoreDao.findByProductId(productCountInScoreList.get(i).getProductId());
double[] otherProductScoreList = new double[bb.size()];
for (int j = 0; j < bb.size(); j++) {
otherProductScoreList[j] = Double.parseDouble(bb.get(j).getGrade());
}
ss.put(productCountInScoreList.get(i).getProductId(),otherProductScoreList);
}
List<Job> resJobList = new ArrayList<>();
//循环Map依次比对其线性相似度
ss.forEach((String k, double[] v)->{
double n = CFUtils.cosineSimilarity(ownProductScoreList,v);
log.info("id:{},线性相似度:{}",k,n);
//判断相似度值是否符合自己设定的阈值
if(n > pearsonCorrelation) {
//符合相似阈值,放入推荐列表
resJobList.add(jobDao.findById(k));
}
});
return resJobList;
}
Project view Page-页面预览如下:
注:看不到图片可能需要梯子(maybe u need VPN)
?
?
?
?
Run-启动访问(本地部署)?
1.启动Nginx
启动命令:nginx.exe
- 将两个前端页面【recruit】文件包拷贝到Nginx根目录下,修改./conf/nginx.conf配置文件,替换原有的server配置如下:
server {
listen 80;
server_name localhost;
location / {
root recruit;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
2.启动Mongodb
启动命令:net start mongoDB
3.启动Redis
启动命令:redis-server.exe ?--service-start --service-name redisserver
4.启动项目
- 本地启动
打开idea选择import project,选择recruit,然后等待相关依赖加载完成 修改recruit项目中application.properties配置文件,将你自己的MySQL账号和密码替换写入
#数据源
spring.datasource.url=jdbc:mysql://localhost:3306/recruit?useUnicode=true&zeroDateTimeBehavior=convertToNull&autoReconnect=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
5.启动mongodb-file-server.jar
启动命令:java -jar mongodb-file-server.jar
6.view address访问地址
http://localhost
PS-其他说明
- 启动项目会自动生成表结构,需您先行创建数据库recruit
- 启动不能自动构建表,并且报错"Specified key was too long; max key length is xxx bytes"的请保证您的MySQL版本为5.X,并且修改您的数据库编码字符集为utf8 – UTF-8 Unicode
- 项目使用Redis存储Session会话
- 项目使用MongoDB作为小型文件存储数据库
- 项目中推荐算法部分的实现需要评分数据支撑,请登录不同用户为职位提交评分、评论(每个景点不少于5个评分)
Call me-联系方式
- E-mail:824247231@qq.com
- QQ:824247231
|