Java程序员用下班时间写了个高校毕业就业管理平台

 前言介绍:

      随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。高校毕业生就业管理系统,主要的模块包括首页、个人中心、学生管理、辅导员管理、企业管理、招聘信息管理、应聘信息管理、毕业去向管理、就业知识管理、系统管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的操作权限。要想实现高校毕业生就业管理系统的各项功能,需要后台数据库的大力支持。管理员验证注册信息,收集的信息,并由此分析得出的关联信息等大量的数据都由数据库管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。本系统的开发使获取高校毕业生就业管理系统信息能够更加方便快捷,同时也使高校毕业生就业管理系统管理信息变的更加系统化、有序化。系统界面较友好,易于操作。

项目设计:

     高校毕业生就业管理系统基于Web服务模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在不受时间、地点的限制来使用这个系统。高校毕业生就业管理系统工作原理图,如图

图系统工作原理图

系统架构图属于系统设计阶段,系统架构图只是这个阶段一个产物,系统的总体架构决定了整个系统的模式,是系统的基础。高校毕业生就业管理系统的整体结构设计

功能截图:

系统首页:首页可以查看首页、企业、招聘信息、就业知识、公告信息、个人中心、后台管理等信息进行详细操作

登录注册:管理员、学生、辅导员和企业四个角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息

企业信息:

企业详情:

招聘信息:在招聘信息页面中可以查看企业名称、企业账号、岗位名称、上班地点、上班时间、薪资待遇、招聘人数、联系方式、点击次数、任职要求、企业介绍等信息

图片[1]-Java程序员用下班时间写了个高校毕业就业管理平台-一一网
 招聘信息详情:

招聘信息详情公司介绍

用户填写应聘信息:管理员或企业收到应聘信息进行审核、审核后在用户端可以看到

企业账号登录审核通过后进行面试:

学生用户查看应聘信息 

就业知识:在就业知识页面中可以查看标题、分类、图片、相关资料、视频等信息

 在就业知识可以对文件进行下载以及视频的观看。

以及评论和文件内容的查看 

线下宣讲会:

图片[2]-Java程序员用下班时间写了个高校毕业就业管理平台-一一网
公告信息:

公告详情:

个人中心:

管理员后台管理:管理员登录进入系统之后,就可以对所有的信息进行查看,可以查看到首页、个人中心、学生管理、辅导员管理、企业管理、招聘信息管理、应聘信息管理、毕业去向管理、就业知识管理、系统管理等,并且还可以对其进行相应的操作管理

图片[3]-Java程序员用下班时间写了个高校毕业就业管理平台-一一网
 企业管理:在企业管理页面中可以对索引、企业账号、企业名称、企业地址、负责人、联系方式、邮箱、企业图片、附件等信息进行详情,修改或删除等操作

招聘信息:

 

 应聘信息:

毕业去向:

就业知识:

 线下宣讲会:

图片[4]-Java程序员用下班时间写了个高校毕业就业管理平台-一一网
系统公告以及轮播图等管理:

图片[5]-Java程序员用下班时间写了个高校毕业就业管理平台-一一网
​​

 代码实现:



/**
 * 招聘信息
 * 后端接口
 * @author 
 * @email 
 * @date 2022-03-05 23:00:18
 */
@RestController
@RequestMapping("/zhaopinxinxi")
public class ZhaopinxinxiController {
    @Autowired
    private ZhaopinxinxiService zhaopinxinxiService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ZhaopinxinxiEntity zhaopinxinxi,
		HttpServletRequest request){
		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("qiye")) {
			zhaopinxinxi.setQiyezhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZhaopinxinxiEntity> ew = new EntityWrapper<ZhaopinxinxiEntity>();
		PageUtils page = zhaopinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhaopinxinxi), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,ZhaopinxinxiEntity zhaopinxinxi, HttpServletRequest request){
        EntityWrapper<ZhaopinxinxiEntity> ew = new EntityWrapper<ZhaopinxinxiEntity>();
		PageUtils page = zhaopinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhaopinxinxi), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( ZhaopinxinxiEntity zhaopinxinxi){
       	EntityWrapper<ZhaopinxinxiEntity> ew = new EntityWrapper<ZhaopinxinxiEntity>();
      	ew.allEq(MPUtil.allEQMapPre( zhaopinxinxi, "zhaopinxinxi")); 
        return R.ok().put("data", zhaopinxinxiService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ZhaopinxinxiEntity zhaopinxinxi){
        EntityWrapper< ZhaopinxinxiEntity> ew = new EntityWrapper< ZhaopinxinxiEntity>();
 		ew.allEq(MPUtil.allEQMapPre( zhaopinxinxi, "zhaopinxinxi")); 
		ZhaopinxinxiView zhaopinxinxiView =  zhaopinxinxiService.selectView(ew);
		return R.ok("查询招聘信息成功").put("data", zhaopinxinxiView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ZhaopinxinxiEntity zhaopinxinxi = zhaopinxinxiService.selectById(id);
		zhaopinxinxi.setClicknum(zhaopinxinxi.getClicknum()+1);
		zhaopinxinxiService.updateById(zhaopinxinxi);
        return R.ok().put("data", zhaopinxinxi);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ZhaopinxinxiEntity zhaopinxinxi = zhaopinxinxiService.selectById(id);
		zhaopinxinxi.setClicknum(zhaopinxinxi.getClicknum()+1);
		zhaopinxinxiService.updateById(zhaopinxinxi);
        return R.ok().put("data", zhaopinxinxi);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody ZhaopinxinxiEntity zhaopinxinxi, HttpServletRequest request){
    	zhaopinxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zhaopinxinxi);
        zhaopinxinxiService.insert(zhaopinxinxi);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody ZhaopinxinxiEntity zhaopinxinxi, HttpServletRequest request){
    	zhaopinxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zhaopinxinxi);
        zhaopinxinxiService.insert(zhaopinxinxi);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody ZhaopinxinxiEntity zhaopinxinxi, HttpServletRequest request){
        //ValidatorUtils.validateEntity(zhaopinxinxi);
        zhaopinxinxiService.updateById(zhaopinxinxi);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        zhaopinxinxiService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<ZhaopinxinxiEntity> wrapper = new EntityWrapper<ZhaopinxinxiEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("qiye")) {
			wrapper.eq("qiyezhanghao", (String)request.getSession().getAttribute("username"));
		}

		int count = zhaopinxinxiService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	


}
复制代码

数据库设计:

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表4-1:企业

字段名称 类型 长度 字段说明
id bigint 主键
addtime timestamp 创建时间
qiyezhanghao varchar 200 企业账号
mima varchar 200 密码
qiyemingcheng varchar 200 企业名称
qiyedizhi varchar 200 企业地址
fuzeren varchar 200 负责人
lianxifangshi varchar 200 联系方式
youxiang varchar 200 邮箱
qiyetupian varchar 200 企业图片
qiyezizhi varchar 200 企业资质
yingyexukezheng varchar 200 营业许可证
sfsh varchar 200 是否审核
shhf longtext 4294967295 审核回复

​​

表:公告信息

字段名称 类型 长度 字段说明
id bigint 主键
addtime timestamp 创建时间
title varchar 200 标题
introduction longtext 4294967295 简介
picture varchar 200 图片
content longtext 4294967295 内容

表:就业知识

字段名称 类型 长度 字段说明
id bigint 主键
addtime timestamp 创建时间
biaoti varchar 200 标题
fenlei varchar 200 分类
tupian varchar 200 图片
xiangguanziliao varchar 200 相关资料
shipin varchar 200 视频
wenzhangneirong longtext 4294967295 文章内容

表:辅导员

字段名称 类型 长度 字段说明
id bigint 主键
addtime timestamp 创建时间
fudaoyuangonghao varchar 200 辅导员工号
mima varchar 200 密码
fudaoyuanxingming varchar 200 辅导员姓名
xingbie varchar 200 性别
lianxidianhua varchar 200 联系电话
jiaoshiyouxiang varchar 200 教师邮箱

表:招聘信息

字段名称 类型 长度 字段说明
id bigint 主键
addtime timestamp 创建时间
qiyemingcheng varchar 200 企业名称
qiyezhanghao varchar 200 企业账号
qiyetupian varchar 200 企业图片
gangweimingcheng varchar 200 岗位名称
shangbandidian varchar 200 上班地点
shangbanshijian varchar 200 上班时间
xinzidaiyu int 薪资待遇
zhaopinrenshu int 招聘人数
lianxifangshi varchar 200 联系方式
qiyejieshao longtext 4294967295 企业介绍
renzhiyaoqiu longtext 4294967295 任职要求
sfsh varchar 200 是否审核
shhf longtext 4294967295 审核回复
clicknum int 点击次数

表:配置文件

字段名称 类型 长度 字段说明
id bigint 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值

表:应聘信息

字段名称 类型 长度 字段说明
id bigint 主键
addtime timestamp 创建时间
qiyemingcheng varchar 200 企业名称
gangweimingcheng varchar 200 岗位名称
xinzidaiyu varchar 200 薪资待遇
qiyezhanghao varchar 200 企业账号
xueshengzhanghao varchar 200 学生账号
xueshengxingming varchar 200 学生姓名
lianxifangshi varchar 200 联系方式
jianlitoudi varchar 200 简历投递
yingpinriqi datetime 应聘日期
sfsh varchar 200 是否审核
shhf longtext 4294967295 审核回复

论文参考:

摘  要

1 系统概述

1.1 概述

1.2课题意义

1.3 主要内容

2 系统开发环境

2.1 Spring Boot框架

2.2 JAVA简介

2.3访问数据库实现方法

2.4系统对MySQL数据库的两种连接方式

2.5 MySql数据库

3 需求分析

3.1技术可行性:技术背景

3.2经济可行性

3.3操作可行性

3.4系统设计规则

3.5系统流程和逻辑

4系统概要设计

4.1 概述

4.2 系统结构

4.3. 数据库设计

4.3.1 数据库实体

4.3.2 数据库设计表

5 系统详细设计
5 系统详细设计

5.1系统功能模块

5.2 管理员功能模块

5.3企业功能模块

5.4辅导员功能模块

5.5学生功能模块

6 系统测试

6.1系统测试的目的

6.2系统测试方法

6.3 测试结果

结论

致 谢

参考文献

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享