SSM+Mysql实现的大学校园兼职系统(功能包含注册登录,发布兼职、个人中心、论坛交流、系统公告、查看兼职信息、查看用户信息、私聊等)

news2025/1/23 10:22:02

博客目录

  • SSM+Mysql实现的大学校园兼职系统
    • 实现功能截图
    • 系统功能
    • 使用技术
    • 代码
    • 完整源码

SSM+Mysql实现的大学校园兼职系统

本系统是一个在线的大学校园兼职系统,商家可以在上面发布自己的兼职,学生可以根据自己的需要,联系兼职,给学生和商家提供了一个方便的对接平台。
(文末查看完整源码)

实现功能截图

登录
请添加图片描述
发布兼职
请添加图片描述
个人中心
请添加图片描述
平台兼职首页
请添加图片描述
请添加图片描述
查看我发布的兼职
请添加图片描述
查看首页兼职详细信息
请添加图片描述
论坛交流
请添加图片描述
平台公告
请添加图片描述

系统功能

本系统实现了以下功能:
1、登录
2、发布兼职
3、兼职查看
4、查看用户
5、论坛交流
6、平台公告
7、个人中心

使用技术

数据库:mysql
开发工具:Idea(Myeclispe、Eclipse也可以)
知识点:Spring+springmvc+mybatis+layui

项目结构
在这里插入图片描述

代码

java端
实体类
Adver.java

package com.work.pojo;

import java.util.Date;


public class Adver {
	private Integer id;
	private User user;
	private String title;
	private String content;
	private String image;
	private Integer position;
	private Date createTime;
	
	private Integer userId;
	private String nickName;
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public User getUser() {
		return user;
	}
	public void setUser(User user) {
		this.user = user;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
	public String getImage() {
		return image;
	}
	public void setImage(String image) {
		this.image = image;
	}
	public Integer getPosition() {
		return position;
	}
	public void setPosition(Integer position) {
		this.position = position;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	
	public Integer getUserId() {
		return userId;
	}
	public void setUserId(Integer userId) {
		this.userId = userId;
	}
	public String getNickName() {
		return nickName;
	}
	public void setNickName(String nickName) {
		this.nickName = nickName;
	}
	
	
}

Chat.java

package com.work.pojo;

import java.util.Date;


public class Chat{
	private Integer id;
	private User userFa;
	private User userJie;
	private String content;
	private String image;
	private Date createTime;
	private Integer isRemoveFa;
	private Integer isRemoveJie;
	private String chatSignal;
	private Integer isLook;
	
	private Integer userIdFa;
	private String nickNameFa;
	private String headerImageFa;
	private Integer userIdJie;
	private String nickNameJie;
	private String headerImageJie;
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public User getUserFa() {
		return userFa;
	}
	public void setUserFa(User userFa) {
		this.userFa = userFa;
	}
	public User getUserJie() {
		return userJie;
	}
	public void setUserJie(User userJie) {
		this.userJie = userJie;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
	public String getImage() {
		return image;
	}
	public void setImage(String image) {
		this.image = image;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	public Integer getIsRemoveFa() {
		return isRemoveFa;
	}
	public void setIsRemoveFa(Integer isRemoveFa) {
		this.isRemoveFa = isRemoveFa;
	}
	public Integer getIsRemoveJie() {
		return isRemoveJie;
	}
	public void setIsRemoveJie(Integer isRemoveJie) {
		this.isRemoveJie = isRemoveJie;
	}
	public String getChatSignal() {
		return chatSignal;
	}
	public void setChatSignal(String chatSignal) {
		this.chatSignal = chatSignal;
	}
	public Integer getIsLook() {
		return isLook;
	}
	public void setIsLook(Integer isLook) {
		this.isLook = isLook;
	}
	
	public Integer getUserIdFa() {
		return userIdFa;
	}
	public void setUserIdFa(Integer userIdFa) {
		this.userIdFa = userIdFa;
	}
	public String getNickNameFa() {
		return nickNameFa;
	}
	public void setNickNameFa(String nickNameFa) {
		this.nickNameFa = nickNameFa;
	}
	public String getHeaderImageFa() {
		return headerImageFa;
	}
	public void setHeaderImageFa(String headerImageFa) {
		this.headerImageFa = headerImageFa;
	}
	public Integer getUserIdJie() {
		return userIdJie;
	}
	public void setUserIdJie(Integer userIdJie) {
		this.userIdJie = userIdJie;
	}
	public String getNickNameJie() {
		return nickNameJie;
	}
	public void setNickNameJie(String nickNameJie) {
		this.nickNameJie = nickNameJie;
	}
	public String getHeaderImageJie() {
		return headerImageJie;
	}
	public void setHeaderImageJie(String headerImageJie) {
		this.headerImageJie = headerImageJie;
	}
	
}

mapper
AdverMapper.java

package com.work.mapper;

import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.work.pojo.Adver;

public interface AdverMapper {
	
	public List<Adver> getAdverList(@Param("adver")Adver adver, @Param("page")Integer page, @Param("limit")Integer limit);
	public Integer getAdverListCount(@Param("adver")Adver adver);
	public void addAdver(@Param("adver")Adver adver);
	public void updateAdver(@Param("adver")Adver adver);
	public Adver getAdverById(@Param("id")Integer id);
	public void deleteAdverById(@Param("id")int id);
}

service层
AdverServiceImpl.java

package com.work.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.work.mapper.AdverMapper;
import com.work.pojo.Adver;
import com.work.service.AdverService;

@Service
public class AdverServiceImpl implements AdverService{

	@Autowired
	private AdverMapper adverMapper;

	@Override
	public List<Adver> getAdverList(Adver adver, Integer page, Integer limit) {
		return adverMapper.getAdverList(adver, page, limit);
	}

	@Override
	public Integer getAdverListCount(Adver adver) {
		return adverMapper.getAdverListCount(adver);
	}

	@Override
	public void addAdver(Adver adver) {
		adverMapper.addAdver(adver);
	}

	@Override
	public void updateAdver(Adver adver) {
		adverMapper.updateAdver(adver);
	}

	@Override
	public Adver getAdverById(Integer id) {
		return adverMapper.getAdverById(id);
	}

	@Override
	public void deleteAdverById(int id) {
		adverMapper.deleteAdverById(id);
	}
	
}

ChatServiceImpl.java

package com.work.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.work.mapper.ChatMapper;
import com.work.pojo.Chat;
import com.work.service.ChatService;

@Service
public class ChatServiceImpl implements ChatService{
	
	@Autowired
	private ChatMapper chatMapper;

	@Override
	public List<Chat> getChatList(Chat chat, Integer page, Integer limit) {
		return chatMapper.getChatList(chat, page, limit);
	}

	@Override
	public Integer getChatListCount(Chat chat) {
		return chatMapper.getChatListCount(chat);
	}

	@Override
	public void addChat(Chat chat) {
		chatMapper.addChat(chat);
	}

	@Override
	public void updateChat(Chat chat) {
		chatMapper.updateChat(chat);
	}

	@Override
	public Chat getChatById(Integer id) {
		return chatMapper.getChatById(id);
	}

	@Override
	public void deleteChatByChatId(int id) {
		chatMapper.deleteChatById(id);
	}
	
	@Override
	public List<Chat> findChatList(Chat chat, Integer page, Integer limit) {
		return chatMapper.findChatList(chat, page, limit);
	}
	
	@Override
	public Integer findChatListCount(Chat chat) {
		return chatMapper.findChatListCount(chat);
	}

	@Override
	public List<Chat> myChatList(Chat chat) {
		return chatMapper.myChatList(chat);
	}
	
	


	
}

controller层
AdverController.java

package com.work.controller;

import java.util.Date;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.work.common.utils.BaseUtil;
import com.work.common.utils.JsonUtil;
import com.work.pojo.Adver;
import com.work.pojo.User;
import com.work.service.AdverService;

@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;
	}
	
	//添加广告
	@RequestMapping("/addAdver")
	public void addAdver(HttpServletRequest request,HttpServletResponse response,Adver adver){
		User serverUser = (User) request.getSession().getAttribute("serverUser");
		adver.setCreateTime(new Date());
		adver.setUserId(serverUser.getUserId());
		adverService.addAdver(adver);
		output(response,JsonUtil.buildFalseJson(0, "添加成功!"));
	}
	
	//去编辑广告
	@RequestMapping("/goUpdateAdver")
	public ModelAndView goUpdateAdver(ModelAndView mv,Integer id){
		Adver adver = adverService.getAdverById(id);
		mv.addObject("adver", adver);
		mv.setViewName("server/adverManage/updateAdver");
		return mv;
	}
	
	//编辑广告
	@RequestMapping("/updateAdver")
	public void updateAdver(HttpServletResponse response,Adver adver){
		adverService.updateAdver(adver);
		output(response,JsonUtil.buildFalseJson(0, "编辑成功!"));
	}

	//删除广告
	@RequestMapping("/deleteAdver")
	public void deleteAdver(HttpServletResponse response,Integer id){
		adverService.deleteAdverById(id);
		output(response,JsonUtil.buildFalseJson(0, "删除成功!"));
	}

	
}

ChatController.java

package com.work.controller;

import java.util.List;

import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.work.common.utils.BaseUtil;
import com.work.common.utils.JsonUtil;
import com.work.pojo.Chat;
import com.work.service.ChatService;

@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;
	}
	
	//获取聊天列表
	@RequestMapping("/getChatList")
	public void getChatList(HttpServletResponse response,Chat chat,Integer page,Integer limit){
		if(page == null){
			page = 1;
		}
		if(limit == null){
			limit = 10;
		}
		int totalCount = chatService.getChatListCount(chat);
		List<Chat> list = chatService.getChatList(chat,(page-1) * limit, limit);
		output(response,JsonUtil.buildJsonByTotalCount(list, totalCount));
	}
	
	//去编辑聊天
	@RequestMapping("/goUpdateChat")
	public ModelAndView goUpdateChat(ModelAndView mv,Integer id){
		Chat chat = chatService.getChatById(id);
		mv.addObject("chat", chat);
		mv.setViewName("server/chatManage/updateChat");
		return mv;
	}
	
	//编辑聊天
	@RequestMapping("/updateChat")
	public void updateChat(HttpServletResponse response,Chat chat){
		chatService.updateChat(chat);
		output(response,JsonUtil.buildFalseJson(0, "编辑成功!"));
	}

	//删除聊天
	@RequestMapping("/deleteChat")
	public void deleteChat(HttpServletResponse response,Integer id){
		chatService.deleteChatByChatId(id);
		output(response,JsonUtil.buildFalseJson(0, "删除成功!"));
	}

}

完整源码

觉得有用,记得一键三连哦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/77434.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript 中如何实现并发控制?

一、并发控制简介 在日常开发过程中&#xff0c;你可能会遇到并发控制的场景&#xff0c;比如控制请求并发数。那么在 JavaScript 中如何实现并发控制呢&#xff1f;在回答这个问题之前&#xff0c;我们来简单介绍一下并发控制。 假设有 6 个待办任务要执行&#xff0c;而我们…

Kubernetes HPA 动态弹性扩缩容

1.HPA 1.1HPA介绍 1.在Kubernetes中&#xff0c;HPA自动更新工作负载资源&#xff08;例如&#xff1a;Deployment或者StatefulSet&#xff09;&#xff0c;目的是自动扩缩工作负载以满足需求&#xff0c;水平扩缩意味着对增加的负载的响应是部署更多的 Pod&#xff0c;与垂直…

算法工程师深度解构ChatGPT技术

引言 | 本栏目特邀腾讯知名语言文本项目算法工程师冉昱、薛晨&#xff0c;用专业视野带你由浅入深了解ChatGPT技术全貌。它经历了什么训练过程&#xff1f;成功关键技术是什么&#xff1f;将如何带动行业的变革&#xff1f;开发者如何借鉴ChatGPT思路和技术&#xff0c;投入到日…

西门子PLC S7-1500产生精确时间戳及各种数据处理的方法

目录 1、完整程序 2、将时钟转换成整型数 3、获取相对时间 4、转成微秒&#xff08;μs&#xff09;&#xff0c;并转成32位无符号整数 5、翻转的问题 6、有时间戳采集时的对时机制 在数据采集时&#xff0c;精准的相对时间是非常重要的。尤其是高速采集时&#xff0c;上位…

算法训练第四十五天 | LeetCode 70、322、279背包问题

LeetCode 70爬楼梯 题目简析&#xff1a; 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 思路分析&#xff1a; 用完全背包的思路来做&#xff0c;见注释 //普通dppublic int climbStairs(in…

Redis框架(四):大众点评项目 基于Redis的短信登录

大众点评项目 基于Session的短信登录需求&#xff1a;基于Redis实现短信验证登录基于Redis的短信登录实战优化为Redis login方法配置拦截器实现双重验证配置类实现异步/排序 拦截结果展示SpringCloud章节复习已经过去&#xff0c;新的章节Redis开始了&#xff0c;这个章节中将会…

【图像处理】DWT图像处理【含Matlab源码 198期】

⛄一、数字图像处理简介 图像处理基础教程链接 1 【基础教程】基于matlab图像处理&#xff08;表示方法数据结构基本格式类型转换读取点运算代数运算&#xff09;【含Matlab源码 834期】 2 【基础教程】基于matlab图像处理&#xff08;读写显示运算转换变换增强滤波分析统计&a…

jvm学习笔记(一)----jvm简史

文章目录1. JVM简单介绍2. java虚拟机介绍1. JVM简单介绍 虚拟机是一种抽象化的计算机&#xff0c;通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构&#xff0c;如处理器、堆栈、寄存器等&#xff0c;还具有相应的指令系统。Java虚拟机屏…

ASP.NET微信快速开发框架源码【源码分享】

ASP.NET微信快速开发框架源码 微信公众平台快速开发框架源码 需要源码学习&#xff0c;查看文末卡片获取&#xff0c;或私信我。 框架主要技术&#xff1a; ASP.NET MVC5、ASP.NET Identity、Bootstrap、KnockoutJs、Entity Framework等。 主要特色&#xff1a; 1、快速迭代开…

Redis主从复制原理

前面的文章中我们演示过Redis主从配置的操作&#xff0c;可以查看之前的博文Redis主从配置教程。这篇文章主要介绍一下Redis主从复制的工作过程和原理。 Redis复制工作过程 Redis复制的工作过程如上图&#xff0c;主要包含以及几个阶段&#xff1a; 1. 设置IP端口并建立连接 …

C++学习笔记(十九)——stack和queue的模拟实现

容器适配器 deque的简单介绍 stack的模拟实现 queue的模拟实现 容器适配器 适配器:一种设计模式,该种模式是将一个类的接口转换成客户希望的另外一个接口. stack和queue的底层结构 可以看出的是,这两个容器 相比我们之间见过的容器多了一个模板参数,也就是容器类的模板参数,…

数据结构复习+答案

一、选择题&#xff1a;&#xff08;每小题2分&#xff0c;共30分&#xff09; 1、在数据的逻辑结构中&#xff0c;树结构和图结构都是&#xff08; &#xff09; A.非线性结构 B.线性结构 C.动态结构 D.静态结构 2.在一个长度为n的顺序表中插入一个元素的算法的时间复杂度为&…

ThinkPHP文件包含漏洞分析

出品|长白山攻防实验室(ID:A_Tree&#xff09; 0x00 声明 以下内容&#xff0c;来自长白山攻防实验室的A_Tree作者原创&#xff0c;由于传播&#xff0c;利用此文所提供的信息而造成的任何直接或间接的后果和损失&#xff0c;均由使用者本人负责&#xff0c;长白山攻防实验室…

全宇宙最强AI 聊天机器人模型ChatGPT惊艳来袭,你还不上车?居然能写演讲稿和帮忙写代码

目录1、ChatGPT介绍2、ChatGPT如何注册&#xff0c;国内不可用3、VS Code下载安装ChatGPT3.1 打开VS Code找到ChatGPT3.2 ChatGPT 详细安装步骤&#xff1a;3.3 用法3.4 国外模式’ 此模式下&#xff0c;速度会比较稳定&#xff0c;如果有条件&#xff0c;建议使用本模式。 理论…

大数据HDFS凭啥能存下百亿数据?

前言 大家平时经常用的百度网盘存放电影、照片、文档等&#xff0c;那有想过百度网盘是如何存下那么多文件的呢&#xff1f;难到是用一台计算机器存的吗&#xff1f;那得多大磁盘啊&#xff1f;显然不是的&#xff0c;那本文就带大家揭秘。 分布式存储思想 既然一台机器的存储…

Spring 核心与设计思想 · Spring IoC容器 · 控制反转式程序开发 · DI概念

Spring 是什么&#xff1f;一、什么是容器&#xff1f;二、什么是 IoC&#xff1f;2.1 传统程序开发2.2 控制反转式程序开发2.3 对比总结规律三、理解 Spring IoC四、DI 概念说明Spring 是什么&#xff1f; 我们通常说的 Spring 是指 Spring Framework&#xff08;Spring 框架…

【Mysql】知识体系结构构建以及常见考题汇总

【Mysql】知识体系结构构建以及常见考题汇总1、基本SQL知识1.1、D_L语法以及表中常用约束1.2、mysql表列常用数据结构1.3、事务&#xff08;此处展示并发事务问题以及解决方案、实现原理见2.3&#xff09;read uncommitted有脏读问题read committed解决脏读、有不可重复读问题r…

Android基础学习(二十)—— 线程安全

1、Android中线程的常见用法 &#xff08;1&#xff09;继承 Thread class MyThread extends Thread{Overridepublic void run(){//处理具体的逻辑} } new MyThread().start(); //启动此线程//使用匿名类 new Thread(){Overridepublic void run(){//处理具体的逻辑} }.star…

【加油站会员管理小程序】03 创建应用

我们上一篇介绍了数据源的创建&#xff0c;本篇我们介绍应用的创建。 微搭低代码中一共有两类应用&#xff0c;一类是数据模型应用&#xff0c;一类是自定义应用。数据模型应用往往对应着PC端的管理后台&#xff0c;例如我们的小程序通常需要一个管理后台来录入数据。 自定义…

【linux】2022年还能用,网易真的是良心啊,网易云音乐linux版本现在还是可以使用的超赞!!官方网的下载地址还可以使用,音乐使用的是qt5进行开发的。

目录前言1&#xff0c;关于网易云音乐2&#xff0c;可以正常使用&#xff0c;可以登录前言 本文的原文连接是: https://blog.csdn.net/freewebsys/article/details/128261513 未经博主允许不得转载。 博主CSDN地址是&#xff1a;https://blog.csdn.net/freewebsys 博主掘金地址…