招聘网站|基于ssm的jsp招聘网站的设计

作者主页:编程千纸鹤

作者简介:Java、前端、Python开发多年,做过高程,项目经理,架构师

主要内容:Java项目开发、Python项目开发、大学数据和AI项目开发、单片机项目设计、面试技术整理、最新技术分享

收藏点赞不迷路  关注作者有好处

文末获得源码

 项目编号:BS-PT-037

一,环境介绍

语言环境:Java:  jdk1.8

数据库:Mysql: mysql5.7

应用服务器:Tomcat:  tomcat8.5.31

开发工具:IDEA或eclipse

开发技术:SSM+JSP

二,项目简介

本课题主要介绍人才招聘网站设计以及功能构建的实现。首先详细地叙述了人才招聘网站产生和发展的背景及意义,其次描述人才招聘网站的功能需求,整体系统结构的设计、数据库表的设计,最后完成人才招聘网站功能的实现。优点:网站整体风格简约大方,页面布局合理、网站操作方便,解决传统招聘本身地理位置限制问题、信息传递不便问题,为求职者和企业双方构建相互交流的网络平台。

本课题主要以SSM框架做为开发技术,同时采用MySQL作为后台数据库来实现人才招聘网站。其主要的功能是:普通用户投递职位信息和收藏职位信息;企业用户发布职位和查看投递者信息;管理员对普通用户和企业用户进行管理与维护。

本网站的主要目的就是让人才招聘网络化,使人才招聘变得更加容易,从而提高招聘人才的效率,降低招聘人才的成本。

人才招聘网站的建立主要分为以下四种角色分布,每种角色用户所具备的职责各自不同。

第一种:如图2-1所示,未注册的普通游客功能展示。

本网站的主要目的就是让人才招聘网络化,使人才招聘变得更加容易,从而提高招聘人才的效率,降低招聘人才的成本。

人才招聘网站的建立主要分为以下四种角色分布,每种角色用户所具备的职责各自不同。

第一种:如图2-1所示,未注册的普通游客功能展示。

图2-1 游客功能展示

未登录状态下的游客,如图2-1所示。通过访问本网站主页,可以查看职位列表,获取企业发布的职位信息。通过点击“查看企业详情”链接更进一步获取企业详情信息。游客用户在搜索职位信息同时还可以查看网站提供的新闻资讯。游客用户可以注册成为本网站会员,享有更多的功能体验。

第二种:如图2-2所示,已登录的求职者功能展示。

图2-2 求职者功能展示

已经登录状态下的求职者用户,如图2-2所示。求职者拥有更多的功能体验,除了游客用户所具备的功能之外,还有额外的功能体验,如职位收藏夹、职位投递、查看个人职位投递记录、个人简历预览以及修改。总的来说,已登录的求职者功能更多,用户体验效果更好。

第三种:如图2-3所示,企业用户。

图2-3 企业用户功能展示

企业用户是人才招聘网站职位发布一方,是求职招聘环节较为重要的组成部分。如图2-3所示,注册,完善企业信息之后企业游客用户就可以登录企业后台管理系统。企业后台管理系统为企业用户提供了企业信箱和添加职位信息两大较为重要的功能。

企业信箱是方便企业用户一方查看是哪位用户投递了什么样的职位,同时也方便查看求职者个人详细信息。

职位添加是企业用户最基本的功能之一,使用该功能可以快速创建职位信息,职位信息会及时地在网站主页面显示,求职者可以查看该职位信息,可以进行职位投递。

第四种:如图2-4所示,系统管理员。

图2-4 管理员用户功能展示 

系统管理员用户是网站后台的管理者,如图2-4所示,其主要职能是针对企业用户和求职者用户,进行用户信息修改以及删除功能。

 

三,系统展示

搜索模块,是人才招聘网站设计展示、吸引顾客的最关键所在[7]。如图4-5所示,搜索界面集中展示了一些企业在本网站上发布的各式各样的职位信息,具体包括:职位的名称、工作地点、发布企业名称、职位薪资、发布时间。在职位列表上方提供了三个文本搜索输入框,用户在对应位置输入比如“文员”字样,再点击搜索按钮时,网站可以根据用户输入字段进行模糊查询,并且将查询出来的结果显示在职位列表页面上,具体效果如图所示。

人才招聘网站最为核心的功能便是职位投递功能,如图4-11所示,在已登录状态下,真实名称为“花满楼”的用户申请了一家企业发布的职位,系统弹出了“投递成功”的提示信息。

图4-11 第一次职位投递

实现的具体逻辑:

在如4-5所示的搜索页面上点击“查看企业详情”时,系统将职位名称、地址、工资等用户所需的数据封装起来,传递到SpringMVC相对应的Controller控制层接收具体参数,通过Model封装起来,传递到企业详情页面。在用户点击“申请职位”按钮时,首先取得所有封装的参数,再通过ajax技术传递到服务端负责处理投递职位的控制层,控制层接收到所有参数之后根据用户的真实姓名、所申请的职位名称以及职位地址三个条件进行判断,只要三个参数有一个不相同,说明该职位是第一次被投递,将数据插入数据库申请职位表中,系统向客户端返回“投递成功!”,如果三个参数全部相同,系统向用户返回“请不要重复投递!”,效果如图4-12所示。

图4-12 职位重复投递

人才招聘网站另一个较为核心的功能便是收藏功能,如图4-13所示,已登录的用户成功收藏了一家企业的职位信息。

图4-13 职位收藏

具体实现逻辑与职位投递思路大体相同,就是在如图4-5所示前台界面上收集所需的数据,传递到图4-10企业详情界面。用户在点击收藏按钮时,通过ajax技术将收集到的参数传递到服务端用于处理收藏功能的Controller控制层,系统接收前台界面传递的四个参数,向数据库中进行查询。企业名称、真实姓名、职位名称以及职位地址四个字段只要有一个不一致,说明是第一次收藏,四个字段全部相同表明不是第一次收藏,系统弹出“请不要重复收藏!”,效果如图4-14所示。

图4-14 职位重复收藏

图4-24 网站后台管理主页

如图4-25所示,为系统后台企业管理界面,当登录状态下的管理员点击左侧“查询所有企业”菜单链接之后,系统查询数据库企业信息表,将结果集合返回到中部区域页面,以列表形式回显。额外还提供了两个操作,修改和删除操作。

图 4-25 系统后台企业管理

如图4-26所示,为修改企业信息页面,后台系统管理员有权限修改企业用户信息情况,当登录状态下的管理员点击“修改”链接时,会跳转到“修改企业信息”页面,“修改企业信息”页面回显了企业相关信息,方便管理员查看。管理员在有需要的情况下,修改部分信息,点击底端保存按钮后,修改的内容会被存入数据库,并且返回查询所有企业页面,展示修改后的企业信息,与数据库保持同步。

图4-26 修改企业信息

如图4-27所示,为修改个人信息界面。系统后台提供对普通用户个人信息修改功能,具体实现原理与修改企业一致,就是将修改后的数据重新封装成对象,在管理员点击保存按钮之后插入数据库,然后返回到查询所有用户界面,再次从数据库中查出所有用户,与数据库保持同步。

图4-27 修改个人信息

四,核心代码展示

package com.song.work.controller;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.song.work.model.Message;
import com.song.work.model.User;
import com.song.work.service.IUserService;
import com.song.work.util.EncodingTool;

@Controller
@RequestMapping("/user")
public class UserController {

	@Autowired
	public IUserService userService;

	// 查询所有用户
	@RequestMapping("findAllUser")
	public String findAllUser(Model model) {
		List<User> userList = userService.findAll();
		model.addAttribute("userList", userList);
		return "/user/listUser";
	}
	
	/**
	 * 查看个人简历
	 * @param model
	 * @return
	 */
	@RequestMapping("showResume")
	public String showResume(Model model,HttpServletRequest request) {
		//获得session中存的当前对象
		User currUser = (User) request.getSession().getAttribute("currUser");
		String realname=currUser.getRealname();
		//根据真实姓名查询用户
		User user = userService.findUserByRealname(realname);
		model.addAttribute("user", user);
		return "/user/showUserResume";
	}
	/**
	 * 修改简历
	 * */
	@RequestMapping("editResume")
	public String editResume(Model model,Integer uid) {
		User user = userService.findById(uid);
		if(user!=null){
			model.addAttribute("user", user);
		}
		return "/user/editResume";
	}
	/**
	 * 保存简历
	 * */
	@RequestMapping("saveResume")
	public String saveResume(Model model,User user) {
		userService.saveResume(user);
		model.addAttribute("user", user);
		return "forward:showResume";//转发到预览简历
	}
	
	
	// 跳转到修改页面
	@RequestMapping("editUser")
	public String editUser(Integer uid, Model model) {
		// 根据id查询
		User user = userService.findById(uid);
		// 页面回显
		model.addAttribute("user", user);
		return "/user/editUser";
	}

	// 根据ID进行删除
	@RequestMapping("deleteById")
	public String deleteById(Integer uid) {
		userService.deleteById(uid);
		// 重定向到用户列表界面
		return "redirect:findAllUser";
	}
	/**
	 * 修改提交功能
	 * @author slj
	 * @param uid 用户id
	 * @param user 用户对象
	 * @return
	 */
	@RequestMapping("editUserSubmit")
	public String editUserSubmit(Integer uid, User user) {
		userService.updateUser(uid, user);
		return "redirect:findAllUser";
	}

	/**
	 * 用户注册
	 * @author slj
	 * @return
	 */
	@RequestMapping("registUser")
	@ResponseBody
	public Message registUser(User user) {
		Message msg=new Message();
		//根据登录名来判断
		int result = userService.findByUserLoginName(user.getLoginName());
		if(result==1){//登录名已经有了
			msg.setStr("用户登录名已经存在");
			return msg;
		}else{
			userService.save(user);//插入具体数据
			msg.setStr("success");
			return msg;
		}
	}
	/**
	 * 企业根据用户真实名字查询其详细
	 * @author slj
	 */
	@RequestMapping("findUserByRealname")
	public String findUserByRealname(String realname,Model model) {
		User user = userService.findUserByRealname(EncodingTool.encodeStr(realname));
		if(user!=null){		
			model.addAttribute("user", user);
			return "/company/listUser";
		}else{
			throw new RuntimeException("对不起,没有该用户的具体信息");
		}
	}
	/**
	 * 用户登录
	 * @author slj
	 * @return
	 */
	@RequestMapping("login")
	public String login(Model model) {
		return "/login/login";
	}
	/**
	 * 跳转到注册页面
	 * @author slj
	 */
	@RequestMapping("regist")
	public String toRegist(Model model) {
		return "/regist/registUser";
	}
	/**
	 * 退出登录
	 * @author slj
	 * @param request
	 * @return
	 * @throws Exception 
	 */
	@RequestMapping(value = "/exit")
	public String exit(HttpServletRequest request) throws Exception {
		//退出时清空session
		//request.getSession().invalidate();
		request.getSession().removeAttribute("currUser");
		return "/login/login";
	}
}

五,相关作品展示

基于Java开发、Python开发、PHP开发、C#开发等相关语言开发的实战项目

基于Nodejs、Vue等前端技术开发的前端实战项目

基于微信小程序和安卓APP应用开发的相关作品

基于51单片机等嵌入式物联网开发应用

基于各类算法实现的AI智能应用

基于大数据实现的各类数据管理和推荐系统

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 基于ssm jsp的校园兼职平台是一种为大学生提供便捷的兼职信息服务的在线平台。该平台可以帮助学生查找合适的兼职工作机会,并且管理和跟踪兼职工作。 该平台通过使用ssm技术框架,可以提供高效的运行,同时保持较低的开发成本。由于使用了jQuery、Bootstrap等前端技术,该平台不仅拥有较好的用户体验,还拥有良好的响应速度和界面美观度。 学生可以通过该平台找到自己需要的兼职信息,并且可以在线进行申请,平台管理员可以审核并确认申请。一旦学生开始工作,平台还可以帮助学生进行工作记录和工资管理。 除此之外,该平台还可以为学生提供兼职信用评级等服务,以帮助学生构建良好的个人信用,从而在未来能够更容易地找到更好的工作。 总之,基于ssm jsp的校园兼职平台是一种方便、高效、低成本的兼职服务平台,为大学生提供了更便捷的兼职服务,同时也提供了较好的用户体验和管理功能。 ### 回答2: 随着大学生就业压力的不断增大,校园兼职成为了越来越多学生选择的途径。基于SSM(Spring+SpringMVC+Mybatis)框架和JSP技术,可以实现一个校园兼职平台,为学生提供丰富的兼职信息和便捷的招聘服务。 该平台可以分为两个模块:兼职信息发布和招聘求职。 在兼职信息发布模块中,学生可以根据自己的实际情况发布兼职信息,包括招聘单位名称、工作时间、工作地点、工作内容、待遇等信息。同时,招聘单位也可以在该平台上发布招聘信息,吸引更多的学生应聘。在信息的发布过程中,需要进行权限管理,学生只能查看发布者和管理员审核通过的兼职信息。 在招聘求职模块中,学生可以根据自己的意愿浏览和搜索符合自己需求的兼职信息,并且可以投递简历。招聘单位可以查看投递的简历,进行筛选和面试。 在技术实现上,可以使用Mybatis框架对数据库进行管理,使用Spring框架实现业务逻辑处理,使用SpringMVC框架实现请求处理和响应,使用JSP技术实现视图展示。同时,对于平台的安全管理,需要引入Spring Security框架,对用户的登录、注册、权限控制等进行管理。还可以使用Redis等缓存技术对平台进行优化,提升系统性能。 综合来看,基于SSMJSP的校园兼职平台实现将提高校园招聘的效率和便捷性,为学生就业提供更多的选择和机会,也为校园招聘市场的健康发展做出贡献。 ### 回答3: 基于SSM(Spring + SpringMVC + MyBatis)和JSP(JavaServer Pages)的校园兼职网站,可以提供给学生们一个方便快捷的兼职信息发布和获取平台。 首先,基于SSM框架可以实现兼职信息的管理和发布功能,管理员可以通过后台管理系统进行信息的添加、修改和删除操作。而学生用户可以通过登录自己的账户,在网站上浏览最新的兼职信息和发布自己的兼职需求。 其次,借助JSP技术,可以使网站的页面设计更加简洁美观。JSP可以方便地将Java代码嵌入到HTML中,使得开发人员可以更加灵活地控制网站的界面。 此外,校园兼职网站还可以增加其他功能,如实名认证、信用评价、在线交流等,以增强用户信任和交流互动的功能。 总之,基于SSMJSP的校园兼职网站可以为学生提供一个便捷实用的兼职信息平台,同时也可以为管理者提供框架完备的后台管理系统,实现快速高效的校园兼职信息发布和管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程千纸鹤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值