基于Spring Boot的校园招聘平台设计与实现(附源码+数据库+万字文档+PPT)

基于Spring Boot的校园招聘平台

一、摘要

随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。

毕业生信息招聘平台,主要的模块包括查看管理员;首页、个人中心、企业管理、空中宣讲会管理、招聘岗位管理、毕业生管理、个人简历管理、求职信息管理、信息咨询管理、岗位应聘管理、线上面试管理、面试回复管理、试卷管理、试题管理、管理员管理、论坛管理、系统管理、考试管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的操作权限。

要想实现毕业生信息招聘平台的各项功能,需要后台数据库的大力支持。管理员验证注册信息,收集的毕业生信息,并由此分析得出的关联信息等大量的数据都由数据库管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。

本系统的开发使获取毕业生信息招聘平台信息能够更加方便快捷,同时也使毕业生信息招聘平台信息变的更加系统化、有序化。系统界面较友好,易于操作。

关键词:毕业生信息招聘平台;Spring Boot框架;Mysql数据库;Java语言

二、系统设计

设计思想如下:

1、操作简单方便、系统界面安全良好:简单明了的页面布局,方便查询管理的相关信息。

2、即时可见:对毕业生信息招聘平台信息的处理将立马在对应地点可以查询到,从而实现"即时发布、即时见效"的系统功能。

3、功能的完善性:可以管理管理员;首页、个人中心、企业管理、空中宣讲会管理、招聘岗位管理、毕业生管理、个人简历管理、求职信息管理、信息咨询管理、岗位应聘管理、线上面试管理、面试回复管理、试卷管理、试题管理、管理员管理、论坛管理、系统管理、考试管理等。



三、数据库设计

1、招聘岗位信息属性图

2、企业管理属性图

3、个人简历管理属性图

四、系统功能界面

1、管理员功能

管理员登录进入毕业生信息招聘平台可以查看首页、个人中心、企业管理、空中宣讲会管理、招聘岗位管理、毕业生管理、个人简历管理、求职信息管理、信息咨询管理、岗位应聘管理、线上面试管理、面试回复管理、试卷管理、试题管理、管理员管理、论坛管理、系统管理、考试管理等内容。


2、招聘岗位管理功能

招聘岗位管理,在招聘岗位管理页面可以填写岗位名称、行业、岗位要求、专业要求、岗位性质、图片、薪资待遇、工作时间、城市、企业编号、企业名称、联系人、联系电话等内容,并可根据需要对招聘岗位管理进行添加,修改或删除等操作。

3、毕业生管理功能

毕业生管理,在毕业生管理页面可以填写用户名、密码、姓名、性别、头像、专业、手机、邮箱等进行添加,修改,删除或查看详细内容等操作。

4、个人简历管理功能

个人简历管理,在个人简历管理页面可以查看用户名、密码、姓名、性别、头像、居住省份、居住城市、出生年月、工作时间、当前状态、手机、专业、最高学历、简历附件等内容,并可根据需要对个人简历管理信息进行添加,修改,删除或详细内容等操作。

5、企业管理功能

企业登录进入毕业生信息招聘平台可以查看首页、个人中心、空中宣讲会管理、招聘岗位管理、信息咨询管理、岗位应聘管理、线上面试管理、面试回复管理、试卷管理、试题管理、考试管理等内容。

6、信息咨询管理功能

信息咨询管理,在信息咨询管理页面可以查看咨询标题、企业编号、企业名称、咨询日期、备注、用户名、姓名、手机、审核回复等内容,并可根据需要对信息咨询管理进行详情等操作。

7、求职信息功能

求职信息,在求职信息页面可以查看求职标题、图片、期望职位、期望行业、工作城市、薪资要求等信息并可以进行提交。

五、部分代码

java 复制代码
**
 * 空中宣讲会
 * 后端接口
 * @author 
 * @email 
 * @date 2021-01-04 10:02:53
 */
@RestController
@RequestMapping("/kongzhongxuanjianghui")
public class KongzhongxuanjianghuiController {
    @Autowired
    private KongzhongxuanjianghuiService kongzhongxuanjianghuiService;
    


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

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

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

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(KongzhongxuanjianghuiEntity kongzhongxuanjianghui){
        EntityWrapper< KongzhongxuanjianghuiEntity> ew = new EntityWrapper< KongzhongxuanjianghuiEntity>();
 		ew.allEq(MPUtil.allEQMapPre( kongzhongxuanjianghui, "kongzhongxuanjianghui")); 
		KongzhongxuanjianghuiView kongzhongxuanjianghuiView =  kongzhongxuanjianghuiService.selectView(ew);
		return R.ok("查询空中宣讲会成功").put("data", kongzhongxuanjianghuiView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        KongzhongxuanjianghuiEntity kongzhongxuanjianghui = kongzhongxuanjianghuiService.selectById(id);
        return R.ok().put("data", kongzhongxuanjianghui);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") String id){
        KongzhongxuanjianghuiEntity kongzhongxuanjianghui = kongzhongxuanjianghuiService.selectById(id);
        return R.ok().put("data", kongzhongxuanjianghui);
    }
    



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

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

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        kongzhongxuanjianghuiService.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<KongzhongxuanjianghuiEntity> wrapper = new EntityWrapper<KongzhongxuanjianghuiEntity>();
		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("qiyebianhao", (String)request.getSession().getAttribute("username"));
		}

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


}

六、文档展示

有全套文档,支持远程部署!

相关推荐
弗拉唐11 分钟前
springBoot,mp,ssm整合案例
java·spring boot·mybatis
oi7743 分钟前
使用itextpdf进行pdf模版填充中文文本时部分字不显示问题
java·服务器
BestandW1shEs1 小时前
谈谈Mysql的常见基础问题
数据库·mysql
重生之Java开发工程师1 小时前
MySQL中的CAST类型转换函数
数据库·sql·mysql
教练、我想打篮球1 小时前
66 mysql 的 表自增长锁
数据库·mysql
Ljw...1 小时前
表的操作(MySQL)
数据库·mysql·表的操作
哥谭居民00011 小时前
MySQL的权限管理机制--授权表
数据库
2401_857610031 小时前
SpringBoot社团管理:安全与维护
spring boot·后端·安全
少说多做3431 小时前
Android 不同情况下使用 runOnUiThread
android·java