基于javaweb+mysql的ssm校园兼职管理系统(java+ssm+jsp+mysql)

基于javaweb+mysql的ssm校园兼职管理系统(java+ssm+jsp+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的SSM校园兼职管理系统(java+ssm+jsp+mysql)

前台用户和后台管理员两种角色:

前台用户功能有:发布兼职、发布帖子、查看公告、个人中心、投诉等。

后台管理员功能有:用户管理、兼职管理、帖子管理、聊天管理、广告管理、投诉管理、收藏管理、系统管理等。

运行环境:jdk1.8、tomcat7.0\8.5、Eclipse、Mysql5.x。

	public ModelAndView goFindUser(HttpServletRequest request,ModelAndView mv,SystemUpset systemUpset,User user){
		List<SystemUpset> systemUpsets = systemUpsetService.getSystemUpsetList(systemUpset, null, null);
		if(systemUpsets.size() > 0){
			mv.addObject("systemUpset", systemUpsets.get(0));
		}
		user = userService.getUserById(user.getUserId());
		mv.addObject("user", user);
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		mv.addObject("pcUser", pcUser);
		mv.setViewName("pc/user_info");
		return mv;
	}
	
	//去聊天页面
	@RequestMapping(value="/goChat.action")
	public ModelAndView goChat(HttpServletRequest request,ModelAndView mv,SystemUpset systemUpset,User user){
		List<SystemUpset> systemUpsets = systemUpsetService.getSystemUpsetList(systemUpset, null, null);
		if(systemUpsets.size() > 0){
			mv.addObject("systemUpset", systemUpsets.get(0));
		}
		user = userService.getUserById(user.getUserId());
		int userId = user.getUserId();
		mv.addObject("user", user);
		//Session信息
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		mv.addObject("pcUser", pcUser);
		if(pcUser == null){
			mv.setViewName("pc/login");
		}else if(pcUser.getUserId() == userId){
			mv.addObject("updatePage", "y");
			mv.setViewName("pc/index");
		}else{
			//更新isLook
			Chat chat = new Chat();
			chat.setUserIdFa(user.getUserId());
			chat.setUserIdJie(pcUser.getUserId());
			chat.setIsLook(1);
			chatService.updateChat(chat);
			mv.setViewName("pc/chat");
		}
		return mv;
	}
	
	//去论坛页面
	@RequestMapping(value="/goForum.action")
	public ModelAndView goForum(HttpServletRequest request,ModelAndView mv, QueryVo vo){
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		mv.addObject("pcUser", pcUser);
		//获取广告
		Adver adver = new Adver();

@Controller
@RequestMapping("/pc/action")
public class PcActionController extends BaseUtil{

	@Autowired
	private WorkService workService;
	@Autowired
	private ForumService forumService;
	@Autowired
	private ForumReplyService forumReplyService;
	@Autowired
	private CollectService collectService;
	@Autowired
	private ChatService chatService;
	@Autowired
	private MailboxService mailboxService;
	
	
	//发布帖子
	@RequestMapping("/addForum") 
	public void addForum(HttpServletRequest request,HttpServletResponse response,Forum forum){
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		if(pcUser == null){
			output(response,JsonUtil.buildFalseJson(1, "您尚未登录,请先登录!"));
		}else{
			forum.setUserId(pcUser.getUserId());
			forum.setCreateTime(new Date());
			forumService.addForum(forum);
			output(response,JsonUtil.buildFalseJson(0, "发布成功"));
		}
	}
	
	//发布评论
	@RequestMapping("/addForumReply")
	public void addForumReply(HttpServletRequest request,HttpServletResponse response,ForumReply forumReply){

@Controller
@RequestMapping("/pc/index")
public class PcIndexController extends BaseUtil{

	@Autowired
	private AdverService adverService;
	@Autowired
	private NoticeService noticeService;
	@Autowired
	private WorkService workService;
	@Autowired
	private UserService userService;
	@Autowired
	private ForumService forumService;
	@Autowired
	private ChatService chatService;
	@Autowired
	private BannerService bannerService;
	@Autowired
			request.setAttribute("systemUpset", systemUpsets.get(0));
		}
		//请求链接
		String url = request.getRequestURI();
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		User serverUser = (User) request.getSession().getAttribute("serverUser");
		
		//对个人中心和动作请求进行拦截
		if(url.contains("pc/personal") || url.contains("pc/action")){
			if(pcUser != null){
				return true;
			}
			else{
				request.setAttribute("msg", "您还没有登录,请先登录!");
				request.getRequestDispatcher("/WEB-INF/jsp/pc/login.jsp").forward(request, response);
				return false;
			}
		}
		//后台管理进行拦截
		if(url.contains("server")){
			if(serverUser != null){
				return true;
			}
			else{
				request.setAttribute("msg", "您还没有登录,请先登录!");
				request.getRequestDispatcher("/WEB-INF/jsp/server/login.jsp").forward(request, response);
				return false;
			}
		}
		
		return true;
	}
}

@Controller
@RequestMapping("/server/mailbox")
public class MailboxController extends BaseUtil{

	@Autowired
	private MailboxService mailboxService;
	
	//去信箱列表
		//消息通知(聊天)
		String isChat = "f";
		chat.setUserIdJie(user.getUserId());
		chat.setUserIdFa(null);
		chat.setIsLook(0);
		List<Chat> isChats = chatService.getChatList(chat, null, null);
		if(isChats.size() > 0){
			isChat = "t";
		}
		mv.addObject("isChat", isChat);
		mv.addObject("chats", chats);
		//评论消息
		String isReply = "f";
		Forum forum = new Forum();
		forum.setIsEffect(1);
		forum.setUserId(user.getUserId());
		List<Forum> isForums = forumService.getForumList(forum, null, null);
		List<Forum> forums = new ArrayList<>();
		if(isForums.size() > 0){
			ForumReply forumReply = new ForumReply();
			forumReply.setStatus(0);
			for(int i=0; i<isForums.size(); i++){
				forumReply.setForumId(isForums.get(i).getForumId());
				List<ForumReply>  forumReplys = forumReplyService.getForumReplyList(forumReply, null, null);
				if(forumReplys.size() > 0){
					isReply = "t";
					forums.add(isForums.get(i));
				}
			}
		}
		mv.addObject("isReply", isReply);
		mv.addObject("forums", forums);
		mv.addObject("user", user);
		mv.setViewName("pc/my_notice");
		return mv;
	}
	
	//从聊天列表删除
	@RequestMapping("/deleteMyChatList") 
	public void updateMyChatList(HttpServletRequest request,HttpServletResponse response,User user){
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		Chat chat = new Chat();
		//删除接收方
		chat.setUserIdFa(pcUser.getUserId());
		chat.setUserIdJie(user.getUserId());
		chat.setIsRemoveFa(1);
		chatService.updateChat(chat);
		//删除发送方
		chat.setUserIdFa(user.getUserId());
		chat.setUserIdJie(pcUser.getUserId());
		chat.setIsRemoveJie(1);
		chat.setIsRemoveFa(null);

@Controller
@RequestMapping("/pc/login")
public class PcLoginController extends BaseUtil{

	@Autowired
	private UserService userService;
	@Autowired
	private SystemUpsetService systemUpsetService;
	
	//去登录页面
	@RequestMapping(value="/goLogin")
	public ModelAndView goLogin(HttpServletResponse response,HttpServletRequest request,ModelAndView mv,SystemUpset systemUpset){
		List<SystemUpset> systemUpsets = systemUpsetService.getSystemUpsetList(systemUpset, null, null);
		if(systemUpsets.size() > 0){
			mv.addObject("systemUpset", systemUpsets.get(0));
		}
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		if(pcUser == null){
			mv.setViewName("pc/login");
		}else{
			mv.addObject("updatePage", "y");
			mv.setViewName("pc/index");
		}
		return mv;
	}
	
	//执行登录
	@RequestMapping(value="/doLogin")
	public void doLogin(HttpServletRequest request,HttpServletResponse response,User user){

@Controller
@RequestMapping("/pc/index")
public class PcIndexController extends BaseUtil{

	@Autowired
	private AdverService adverService;
	@Autowired
	private NoticeService noticeService;
	@Autowired
	private WorkService workService;
	@Autowired
	private UserService userService;
	@Autowired
	private ForumService forumService;
	@Autowired
	private ChatService chatService;
	@Autowired
	private BannerService bannerService;
	@Autowired
	private SystemUpsetService systemUpsetService;
	@Autowired
	private ForumReplyService forumReplyService;
	
	//公共头部
	@RequestMapping(value="/goHeader.action")
	public ModelAndView goHeader(HttpServletRequest request,ModelAndView mv,SystemUpset systemUpset){
		List<SystemUpset> systemUpsets = systemUpsetService.getSystemUpsetList(systemUpset, null, null);
		if(systemUpsets.size() > 0){
			mv.addObject("systemUpset", systemUpsets.get(0));
		}
		mv.setViewName("pc/header");
		return mv;
	}
	
	//公共尾部
	@RequestMapping(value="/goFooter.action")
	public ModelAndView goFooter(ModelAndView mv,SystemUpset systemUpset){
		List<SystemUpset> systemUpsets = systemUpsetService.getSystemUpsetList(systemUpset, null, null);
		if(systemUpsets.size() > 0){
	public static boolean isEmpty(Object[] arrObject)
	{
		return (arrObject == null || arrObject.length == 0);
	}
	
	
	public static boolean isNotEmpty(List list)
	{
		return !isEmpty(list);
	}
	
	public static boolean isNotEmpty(Map map)
	{
		return !isEmpty(map);
	}

	
	public static boolean isNotEmpty(Set set)
	{
		return !isEmpty(set);
	}

	public static boolean isNotEmpty(String value)
	{
		return !isEmpty(value);
	}

	public static boolean isNotEmpty(Object value)
	{
		return !isEmpty(value);
	}

	public static boolean isNotEmpty(Long value)
	{
		return !isEmpty(value);
	}

	public static boolean isNotEmpty(Integer value)
	{
		return !isEmpty(value);
	}

	public static boolean isNotEmpty(String[] arrValue)
	{
		return !isEmpty(arrValue);
	}

	public static boolean isNotEmpty(Object[] arrObject)
	{
		return !isEmpty(arrObject);
	}
	

@Controller
@RequestMapping("/pc/index")
public class PcIndexController extends BaseUtil{

	@Autowired
	private AdverService adverService;
	@Autowired
	private NoticeService noticeService;
	@Autowired
	private WorkService workService;
	@Autowired
	private UserService userService;
	@Autowired
	private ForumService forumService;
	@Autowired
	private ChatService chatService;

@Controller
@RequestMapping("/manager/login")
public class ManagerLoginController extends BaseUtil {
	@Resource
	private UserService userService;
	@Resource
	private SystemUpsetService systemUpsetService;
	/**
	 * 管理后台登陆接口
	 * 
	 * @param request
	 * @param response
	 * @param ga
	 */
	@RequestMapping("/dologin")
	public void doLogin(HttpServletRequest request, HttpServletResponse response, User user) throws Exception {
		User serverUser = (User) request.getSession().getAttribute("serverUser");
		if(serverUser == null){
			if(user.getUserId() == null){
	        	  output(response,JsonUtil.buildFalseJson(1,"账号不能为空"));
	          }else{
	        	  if(user.getPassword().equals("") || user.getPassword() == null){
	        		  output(response,JsonUtil.buildFalseJson(1,"密码不能为空"));
	        	  }else{
	        		  User userInfo = userService.getUserById(user.getUserId());
	        		  if(userInfo == null || userInfo.getUserLeven() != 1){
	        			  output(response,JsonUtil.buildFalseJson(1,"账号不正确或系统不存在该用户"));
	        		  }else{
	        			  if(!userInfo.getPassword().equals(MD5Util.MD5Encode(user.getPassword(),"utf-8"))){
	        				  output(response,JsonUtil.buildFalseJson(1,"您输入的密码不正确,请重试")); 
	        			  }else{
	        				  //判断账号是否被禁用
	        				  if(userInfo.getIsEffect() != 1){
	        					  output(response,JsonUtil.buildFalseJson(1,"对不起您的账号已被禁用"));
	        				  }else{
	        					  //执行登陆后台的逻辑
	        					  request.getSession().setAttribute("serverUser",userInfo);
	        					  output(response, JsonUtil.buildFalseJson(0, "登陆成功,欢迎登录兼职平台管理系统"));
	        				  }
	        			  }
	        		  }
	        	  }
			mv.setViewName("server/login");
		} else {
			List<SystemUpset> systems = systemUpsetService.getSystemUpsetList(systemUpset, 0, 10);
			if(systems.size() > 0){
				mv.addObject("system", systems.get(0));
			}else{
				mv.addObject("system", null);
			}
			mv.setViewName("server/index");
		}
		mv.addObject("serverUser", serverUser);
		return mv;
	}

	@RequestMapping("/goServerLogin")
	public ModelAndView goHome(ModelAndView mv) {
		mv.setViewName("server/login");
		return mv;
	}

	@RequestMapping("/goMain")
	public ModelAndView goMain(ModelAndView mv, HttpServletRequest request) {
		mv.setViewName("server/main");
		return mv;
	}

	@RequestMapping("/dologout")
	public void managerLogOut(ModelAndView modelView, HttpServletRequest request, HttpServletResponse response) {
		request.getSession().invalidate();
		output(response, JsonUtil.buildFalseJson(0, "退出成功"));
	}

	@RequestMapping("/goUpdatePassword")
	public ModelAndView goUpdatePassword(HttpServletRequest request, ModelAndView mv) {
		mv.setViewName("server/updatePwd");
		return mv;
	}
	
	//修改密码
	@RequestMapping("/updatePassword") 
	public void updatePassword(HttpServletRequest request,HttpServletResponse response,String rePassword, String password){
		User serverUser = (User) request.getSession().getAttribute("serverUser");
		User user = new User();
		if(password.equals(rePassword)){
			user.setUserId(serverUser.getUserId());
			user.setPassword(MD5Util.MD5Encode(password,"utf-8"));
			userService.updateUser(user);
			request.getSession().invalidate();
			output(response,JsonUtil.buildFalseJson(0, "修改密码成功"));
		}else{
			output(response,JsonUtil.buildFalseJson(1, "前后密码不一致"));
		}
		//判断滚动条
		String isScroll = "f";
		//获取兼职
		Page<Work> page=new Page<Work>();
		if(work.getWorkCategory() != null && !work.getWorkCategory().equals("")){
			isScroll = "t";
//			try {
//				work.setWorkCategory(new String(work.getWorkCategory().getBytes("ISO8859-1"),"UTF-8"));
//			} catch (UnsupportedEncodingException e) {
//				e.printStackTrace();
//			}
		}
		System.out.println(work.getWorkCategory());
		work.setIsEffect(1);
		work.setIsAuditing(1);
		if(vo.getSize()!=8){ 
			vo.setSize(8);
		}
		if(vo.getPage()==null){
			vo.setPage(1);
		}
		//每页数
		page.setSize(vo.getSize());
		if (vo != null){
			//判断当前页
			if(vo.getPage() != null) {
				page.setPage(vo.getPage());
				vo.setStartRow((vo.getPage() -1)*vo.getSize());
			}
			page.setTotal(workService.getWorkListCount(work));
			page.setRows(workService.getWorkList(work, (vo.getPage()-1) * vo.getSize(), vo.getSize()));
		}
		mv.addObject("page", page);
		//系统配置
		SystemUpset systemUpset = new SystemUpset();
		List<SystemUpset> systemUpsets = systemUpsetService.getSystemUpsetList(systemUpset, null, null);
		if(systemUpsets.size() > 0){
			mv.addObject("systemUpset", systemUpsets.get(0));
		}
		//轮播图
		Banner banner = new Banner();
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		mv.addObject("pcUser", pcUser);
		if(pcUser == null){
			mv.setViewName("pc/login");
		}else{
			mv.setViewName("pc/mailbox");
		}
		return mv;
	}
	
	//去发布兼职
	@RequestMapping(value="/goPublishWork.action")
	public ModelAndView goPublishWork(HttpServletRequest request,ModelAndView mv,SystemUpset systemUpset){
		List<SystemUpset> systemUpsets = systemUpsetService.getSystemUpsetList(systemUpset, null, null);
		if(systemUpsets.size() > 0){
			mv.addObject("systemUpset", systemUpsets.get(0));
		}
		User pcUser = (User) request.getSession().getAttribute("pcUser");
		mv.addObject("pcUser", pcUser);
		if(pcUser == null){
			mv.setViewName("pc/login");
		}else{
			mv.setViewName("pc/publish_work");
		}
		return mv;
	}
	
	//去公告页面
	@RequestMapping(value="/goNotice.action")
	public ModelAndView goNotice(HttpServletRequest request, ModelAndView mv, QueryVo vo){
		//获取个公告
		Page<Notice> page=new Page<Notice>();
		Notice notice = new Notice();
		if(vo.getSize()!=12){ 
			vo.setSize(12);
		}
		if(vo.getPage()==null){
			vo.setPage(1);
		}
		//每页数
		page.setSize(vo.getSize());
		if (vo != null){
			//判断当前页
			if(vo.getPage() != null) {
				page.setPage(vo.getPage());
				vo.setStartRow((vo.getPage() -1)*vo.getSize());

	@Autowired
	private MailboxService mailboxService;
	
	//去信箱列表
	@RequestMapping("/goMailboxList")
	public ModelAndView goMailboxList(ModelAndView mv){
		mv.setViewName("server/mailboxManage/mailboxList");
		return mv;
	}
	
	//获取信箱列表
	@RequestMapping("/getMailboxList")
	public void getMailboxList(HttpServletResponse response,Mailbox mailbox,Integer page,Integer limit){
		if(page == null){
			page = 1;
		}
		if(limit == null){
			limit = 10;
		}
		int totalCount = mailboxService.getMailboxListCount(mailbox);
		List<Mailbox> list = mailboxService.getMailboxList(mailbox,(page-1) * limit, limit);
		output(response,JsonUtil.buildJsonByTotalCount(list, totalCount));
	}
	
	//去查看信件
	@RequestMapping("/goUpdateMailbox")
	public ModelAndView goUpdateMailbox(ModelAndView mv,Integer id){
		Mailbox mailbox = mailboxService.getMailboxById(id);
		mv.addObject("mailbox", mailbox);
		mv.setViewName("server/mailboxManage/updateMailbox");
		return mv;
	}
	
	//编辑信件
	@RequestMapping("/updateMailbox")
	public void updateMailbox(HttpServletResponse response,Mailbox mailbox){
		mailboxService.updateMailbox(mailbox);
		output(response,JsonUtil.buildFalseJson(0, "编辑成功!"));
	}

	//删除信件
	@RequestMapping("/deleteMailbox")
	public void deleteMailbox(HttpServletResponse response,Integer id){

@Controller
@RequestMapping("/server/adver")
public class AdverController extends BaseUtil{

	@Autowired
	private AdverService adverService;
	
	//去广告列表
	@RequestMapping("/goAdverList")
	public ModelAndView goAdverList(ModelAndView mv){
		mv.setViewName("server/adverManage/adverList");
		return mv;
	}
	
	//获取广告列表
	@RequestMapping("/getAdverList")
	public void getAdverList(HttpServletResponse response,Adver adver,Integer page,Integer limit){
		if(page == null){
			page = 1;
		}
		if(limit == null){
			limit = 10;
		}
		int totalCount = adverService.getAdverListCount(adver);
		List<Adver> list = adverService.getAdverList(adver,(page-1) * limit, limit);
		output(response,JsonUtil.buildJsonByTotalCount(list, totalCount));
	}
	
	//去添加广告
	@RequestMapping("/goAddAdver")
	public ModelAndView goAddAdver(ModelAndView mv){
		mv.setViewName("server/adverManage/addAdver");
		return mv;
	/**
	 * 是否是整形数字
	 * <一句话功能简述>
	 * <功能详细描述>
	 * 
	 * @see  [相关类/方法]
	 * @since  [DHM.Core.IEPGM-V200R001]
	 */
	public static boolean isInt2(String str)
	{
		if (str != null)
		{
			if (str.matches("\\d+"))
			{
				return true;
			}
		}
		return false;
	}
	
	/**
	 * 封转订购时返回的backurl
	 * @param url
	 * @param orderResult
	 * @param userId
	 * @return
	 */
	public static String getOrderBackurl(String url,String orderResult,String userId){
		userId = userId==null?"":userId;
		String parmStr = "orderResult="+orderResult+"&userId="+userId;
		if(url != null){
			if(url.indexOf(".action?")<=0 ){
				url = url+"?"+parmStr;
			}else{
				url = url+"&"+parmStr;
			}
		}
		return url;
	}
	
	  /**
     * 计算一个日期N天之前的日期
		mv.setViewName("server/forumManage/updateForum");
		return mv;
	}
	
	//编辑帖子
	@RequestMapping("/updateForum")
	public void updateForum(HttpServletResponse response,Forum forum){
		forumService.updateForum(forum);
		output(response,JsonUtil.buildFalseJson(0, "编辑成功!"));
	}

	//禁用兼职
	@RequestMapping("/deleteForum")
	public void deleteForum(HttpServletResponse response,Forum forum){
		forumService.updateForum(forum);
		output(response,JsonUtil.buildFalseJson(0, "禁用成功!"));
	}
	

}

@Controller
@RequestMapping(value="/server/chat")
public class ChatController extends BaseUtil{

	@Autowired
	private ChatService chatService;
	
	//去聊天列表
	@RequestMapping("/goChatList")
	public ModelAndView goChatList(ModelAndView mv){
		mv.setViewName("server/chatManage/chatList");
		return mv;
	public ModelAndView goMain(ModelAndView mv, HttpServletRequest request) {
		mv.setViewName("server/main");
		return mv;
	}

	@RequestMapping("/dologout")
	public void managerLogOut(ModelAndView modelView, HttpServletRequest request, HttpServletResponse response) {
		request.getSession().invalidate();
		output(response, JsonUtil.buildFalseJson(0, "退出成功"));
	}

	@RequestMapping("/goUpdatePassword")
	public ModelAndView goUpdatePassword(HttpServletRequest request, ModelAndView mv) {
		mv.setViewName("server/updatePwd");
		return mv;
	}
	
	//修改密码
	@RequestMapping("/updatePassword") 
	public void updatePassword(HttpServletRequest request,HttpServletResponse response,String rePassword, String password){
		User serverUser = (User) request.getSession().getAttribute("serverUser");
		User user = new User();
		if(password.equals(rePassword)){
			user.setUserId(serverUser.getUserId());
			user.setPassword(MD5Util.MD5Encode(password,"utf-8"));
			userService.updateUser(user);
			request.getSession().invalidate();
			output(response,JsonUtil.buildFalseJson(0, "修改密码成功"));
		}else{
			output(response,JsonUtil.buildFalseJson(1, "前后密码不一致"));
		}
	}
}

@Controller

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值