计算机毕业设计 基于SSM+Vue的校园短期闲置资源置换平台的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌

🍅文末获取源码联系🍅

👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟
————————————————

计算机毕业设计题目《1000套》

目录

一.前言介绍

二.功能设计

三.功能截图

3.1管理员功能模块

3.2用户功能模块

3.3置换账户功能模块

四.数据库表结构设计

五.关键代码

六.论文目录参考

七.源码获取

一.前言介绍

校园短期闲置资源置换平台是校园短期闲置资源置换必不可少的一个部分。在校园短期闲置资源置换的整个过程中,校园短期闲置资源置换平台担负着最重要的角色。为满足如今日益复杂的管理需求,各类校园短期闲置资源置换管理程序也在不断改进。本课题所设计的校园短期闲置资源置换平台,使用java技术进行开发,它的优点代码不能从浏览器查看,保密性非常好,比其他的系统更具安全性。java还容易修改和调试,毕竟商家是在不断发展过程中,难免有更多需求,这点很重要。而且,本系统对校园短期闲置资源置换的管理,是为了满足更深层次的需求。除了上述优势外,本系统还具有查询迅速,搜索资料方便,可靠性强等特点。

二.功能设计

 考虑到实际生活中校园短期闲置资源置换管理方面的需要以及对该平台认真地分析,将系统权限按管理员,置换账户和用户这三类涉及用户划分。

管理员;管理员使用本系统涉到的功能主要有:首页,个人中心,用户管理,置换账户管理,商品分类管理,置换商品管理,置换订单管理,交流论坛,系统管理等功能。

置换账户;进入系统可以实现首页,个人中心,置换商品管理,置换订单管理等功能。

用户;进入系统可以实现首页,个人中心,置换订单管理等功能。

三.功能截图

校园短期闲置资源转换平台,在平台首页可以查看首页,置换商品,交流论坛,公告信息,个人中心,后台管理,在线客服等内容,并进行详细操作。

用户注册,在用户注册页面通过填写用户账号,密码,再次输入密码, 用户姓名,联系方式等信息进行注册操作。

 置换商品,在置换商品页面可以查看商品名称,商品分类,成色,品牌,置换账号,置换姓名,联系电话,点击次数等内容,并进行申请置换,评论和收藏操作。

 交流论坛,在交流论坛页面可以查看帖子标题,发布人,发布时间,帖子内容等信息并进行评论操作。

 个人中心,在个人中心页面通过填写用户账号,密码,用户姓名,上传图片,性别,联系方式等内容进行更新信息,还可以根据需要对我的发布,我的收藏进行相对应操作。

3.1管理员功能模块

 管理员进行登录,进入系统前在登录页面根据要求填写用户名和密码,选择角色等信息,点击登录进行登录操作。

 管理员登录系统后,可以对首页,个人中心,用户管理,置换账户管理,商品分类管理,置换商品管理,置换订单管理,交流论坛,系统管理等功能进行相应的操作管理。

 用户管理,在用户管理页面可以对索引,用户账号,用户姓名,照片,性别,联系方式等内容进行详情,修改和删除等操作。

 置换账户管理,在置换账户管理页面可以对索引,置换账号,置换姓名,照片,性别,联系电话等内容进行详情,修改和删除等操作。

 商品分类管理,在商品分类管理页面可以对索引, 商品分类等内容进行详情,修改和删除等操作。

 置换商品管理,在置换商品管理页面可以对索引,商品名称,图片,商品分类,成色,品牌,置换账号,置换姓名,联系电话等内容进行详情,修改,查看评论和删除等操作。

 置换订单管理,在置换订单管理页面可以对索引,置换编号,商品名称,品牌,置换账号,联系电话,置换物品,物品图片,物品品牌,物品成色,交换地址,用户账号,用户姓名,联系方式,审核回复,审核状态等内容进行详情,修改和删除操作。

 交流论坛,在交流论坛页面可以对索引,帖子标题,用户名,状态等内容进行详情,修改,查看评论和删除等操作。

 系统管理,在公告信息页面可以对索引,标题,图片等内容进行详情,修改和删除操作,还可以对在线客服,轮播图管理进行详细操作。

3.2用户功能模块

 用户登录进入校园短期闲置资源转换平台可以对首页,个人中心,置换订单管理等功能进行相应操作。

 置换订单管理,在置换订单管理页面可以对索引,置换编号,商品名称,品牌,置换账号,联系电话,置换物品,物品图片,物品品牌,物品成色,交换地址,用户账号,用户姓名,联系方式,审核回复,审核状态等内容进行详情和删除操作。

3.3置换账户功能模块

 置换账户登录进入校园短期闲置资源转换平台可以对首页,个人中心,置换商品管理,置换订单管理等功能进行相应操作。

 置换商品管理,在置换商品管理页面可以对索引,商品名称,图片,商品分类,成色,品牌,置换账号,置换姓名,联系电话等内容进行详情,修改,查看评论和删除等操作。

置换订单管理,在置换订单管理页面可以对索引,置换编号,商品名称,品牌,置换账号,联系电话,置换物品,物品图片,物品品牌,物品成色,交换地址,用户账号,用户姓名,联系方式,审核回复,审核状态,审核等内容进行详情和删除操作。

四.数据库表结构设计

CREATE DATABASE /*!32312 IF NOT EXISTS*/ `ssm9z7y9` /*!40100 DEFAULT CHARACTER SET utf8mb4 */;

USE `ssm9z7y9`;

--
-- Table structure for table `chat`
--

DROP TABLE IF EXISTS `chat`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `chat` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `adminid` bigint(20) DEFAULT NULL COMMENT '管理员id',
  `ask` longtext COMMENT '提问',
  `reply` longtext COMMENT '回复',
  `isreply` int(11) DEFAULT NULL COMMENT '是否回复',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=67 DEFAULT CHARSET=utf8 COMMENT='在线客服';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `chat`
--

LOCK TABLES `chat` WRITE;
/*!40000 ALTER TABLE `chat` DISABLE KEYS */;
INSERT INTO `chat` VALUES (61,'2022-04-25 09:06:12',1,1,'提问1','回复1',1),(62,'2022-04-25 09:06:12',2,2,'提问2','回复2',2),(63,'2022-04-25 09:06:12',3,3,'提问3','回复3',3),(64,'2022-04-25 09:06:12',4,4,'提问4','回复4',4),(65,'2022-04-25 09:06:12',5,5,'提问5','回复5',5),(66,'2022-04-25 09:06:12',6,6,'提问6','回复6',6);
/*!40000 ALTER TABLE `chat` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `config`
--

DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `name` varchar(100) NOT NULL COMMENT '配置参数名称',
  `value` varchar(100) DEFAULT NULL COMMENT '配置参数值',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='配置文件';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `config`
--

LOCK TABLES `config` WRITE;
/*!40000 ALTER TABLE `config` DISABLE KEYS */;
INSERT INTO `config` VALUES (1,'picture1','upload/picture1.jpg'),(2,'picture2','upload/picture2.jpg'),(3,'picture3','upload/picture3.jpg');
/*!40000 ALTER TABLE `config` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `discusszhihuanshangpin`
--

DROP TABLE IF EXISTS `discusszhihuanshangpin`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `discusszhihuanshangpin` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `refid` bigint(20) NOT NULL COMMENT '关联表id',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `nickname` varchar(200) DEFAULT NULL COMMENT '用户名',
  `content` longtext NOT NULL COMMENT '评论内容',
  `reply` longtext COMMENT '回复内容',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=107 DEFAULT CHARSET=utf8 COMMENT='置换商品评论表';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `discusszhihuanshangpin`
--

LOCK TABLES `discusszhihuanshangpin` WRITE;
/*!40000 ALTER TABLE `discusszhihuanshangpin` DISABLE KEYS */;
INSERT INTO `discusszhihuanshangpin` VALUES (101,'2022-04-25 09:06:12',1,1,'用户名1','评论内容1','回复内容1'),(102,'2022-04-25 09:06:12',2,2,'用户名2','评论内容2','回复内容2'),(103,'2022-04-25 09:06:12',3,3,'用户名3','评论内容3','回复内容3'),(104,'2022-04-25 09:06:12',4,4,'用户名4','评论内容4','回复内容4'),(105,'2022-04-25 09:06:12',5,5,'用户名5','评论内容5','回复内容5'),(106,'2022-04-25 09:06:12',6,6,'用户名6','评论内容6','回复内容6');
/*!40000 ALTER TABLE `discusszhihuanshangpin` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `forum`
--

DROP TABLE IF EXISTS `forum`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `forum` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `title` varchar(200) DEFAULT NULL COMMENT '帖子标题',
  `content` longtext NOT NULL COMMENT '帖子内容',
  `parentid` bigint(20) DEFAULT NULL COMMENT '父节点id',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `username` varchar(200) DEFAULT NULL COMMENT '用户名',
  `isdone` varchar(200) DEFAULT NULL COMMENT '状态',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=77 DEFAULT CHARSET=utf8 COMMENT='交流论坛';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `forum`
--

LOCK TABLES `forum` WRITE;
/*!40000 ALTER TABLE `forum` DISABLE KEYS */;
INSERT INTO `forum` VALUES (71,'2022-04-25 09:06:12','帖子标题1','帖子内容1',0,1,'用户名1','开放'),(72,'2022-04-25 09:06:12','帖子标题2','帖子内容2',0,2,'用户名2','开放'),(73,'2022-04-25 09:06:12','帖子标题3','帖子内容3',0,3,'用户名3','开放'),(74,'2022-04-25 09:06:12','帖子标题4','帖子内容4',0,4,'用户名4','开放'),(75,'2022-04-25 09:06:12','帖子标题5','帖子内容5',0,5,'用户名5','开放'),(76,'2022-04-25 09:06:12','帖子标题6','帖子内容6',0,6,'用户名6','开放');
/*!40000 ALTER TABLE `forum` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `news`
--

DROP TABLE IF EXISTS `news`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `news` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `title` varchar(200) NOT NULL COMMENT '标题',
  `introduction` longtext COMMENT '简介',
  `picture` varchar(200) NOT NULL COMMENT '图片',
  `content` longtext NOT NULL COMMENT '内容',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=97 DEFAULT CHARSET=utf8 COMMENT='公告信息';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `news`
--

LOCK TABLES `news` WRITE;
/*!40000 ALTER TABLE `news` DISABLE KEYS */;
INSERT INTO `news` VALUES (91,'2022-04-25 09:06:12','有梦想,就要努力去实现','不管你想要怎样的生活,你都要去努力争取,不多尝试一些事情怎么知道自己适合什么、不适合什么呢?你说你喜欢读书,让我给你列书单,你还问我哪里有那么多时间看书;你说自己梦想的职业是广告文案,问我如何成为一个文案,应该具备哪些素质;你说你计划晨跑,但总是因为学习、工作辛苦或者身体不舒服第二天起不了床;你说你一直梦想一个人去长途旅行,但是没钱,父母觉得危险。','upload/news_picture1.jpg','<p>不管你想要怎样的生活,你都要去努力争取,不多尝试一些事情怎么知道自己适合什么、不适合什么呢?</p><p>你说你喜欢读书,让我给你列书单,你还问我哪里有那么多时间看书;你说自己梦想的职业是广告文案,问我如何成为一个文案,应该具备哪些素质;你说你计划晨跑,但总是因为学习、工作辛苦或者身体不舒服第二天起不了床;你说你一直梦想一个人去长途旅行,但是没钱,父母觉得危险。其实,我已经厌倦了你这样说说而已的把戏,我觉得就算我告诉你如何去做,你也不会照做,因为你根本什么都不做。</p><p>真正有行动力的人不需要别人告诉他如何做,因为他已经在做了。就算碰到问题,他也会自己想办法,自己动手去解决或者主动寻求可以帮助他的人,而不是等着别人为自己解决问题。</p><p>首先要学习独立思考。花一点时间想一下自己喜欢什么,梦想是什么,不要别人说想环游世界,你就说你的梦想是环游世界。</p><p>很多人说现实束缚了自己,其实在这个世界上,我们一直都可以有很多选择,生活的决定权也—直都在自己手上,只是我们缺乏行动力而已。</p><p>如果你觉得安于现状是你想要的,那选择安于现状就会让你幸福和满足;如果你不甘平庸,选择一条改变、进取和奋斗的道路,在这个追求的过程中,你也一样会感到快乐。所谓的成功,即是按照自己想要的生活方式生活。最糟糕的状态,莫过于当你想要选择一条不甘平庸、改变、进取和奋斗的道路时,却以一种安于现状的方式生活,最后抱怨自己没有得到想要的人生。</p><p>因为喜欢,你不是在苦苦坚持,也因为喜欢,你愿意投入时间、精力,长久以往,获得成功就是自然而然的事情。</p>'),(92,'2022-04-25 09:06:12','又是一年毕业季','又是一年毕业季,感慨万千,还记的自己刚进学校那时候的情景,我拖着沉重的行李箱站在偌大的教学楼前面,感叹自己未来的日子即将在这个陌生的校园里度过,而如今斗转星移,浮光掠影,弹指之间,那些青葱岁月如同白驹过隙般悄然从指缝溜走。过去的种种在胸口交集纠结,像打翻的五味瓶,甜蜜,酸楚,苦涩,一并涌上心头。','upload/news_picture2.jpg','<p>又是一年毕业季,感慨万千,还记的自己刚进学校那时候的情景,我拖着沉重的行李箱站在偌大的教学楼前面,感叹自己未来的日子即将在这个陌生的校园里度过,而如今斗转星移,浮光掠影,弹指之间,那些青葱岁月如同白驹过隙般悄然从指缝溜走。</p><p>过去的种种在胸口交集纠结,像打翻的五味瓶,甜蜜,酸楚,苦涩,一并涌上心头。一直都是晚会的忠实参与者,无论是台前还是幕后,忽然间,角色转变,那种感觉确实难以用语言表达。</p><p>	过去的三年,总是默默地期盼着这个好雨时节,因为这时候,会有灿烂的阳光,会有满目的百花争艳,会有香甜的冰激凌,这是个毕业的季节,当时不经世事的我们会殷切地期待学校那一大堆的活动,期待穿上绚丽的演出服或者礼仪服,站在大礼堂镁光灯下尽情挥洒我们的澎拜的激情。</p><p>百感交集,隔岸观火与身临其境的感觉竟是如此不同。从来没想过一场晚会送走的是我们自己的时候会是怎样的感情,毕业就真的意味着结束吗?倔强的我们不愿意承认,谢谢学弟学妹们慷慨的将这次的主题定为“我们在这里”。我知道,这可能是他们对我们这些过来人的尊敬和施舍。</p><p>没有为这场晚会排练、奔波,没有为班级、学生会、文学院出点力,还真有点不习惯,百般无奈中,用“工作忙”个万能的借口来搪塞自己,欺骗别人。其实自己心里明白,那只是在逃避,只是不愿面对繁华落幕后的萧条和落寞。大四了,大家各奔东西,想凑齐班上的人真的是难上加难,敏燕从越南回来,刚落地就匆匆回了学校,那么恋家的人也启程回来了,睿睿学姐也是从家赶来跟我们团圆。大家—如既往的寒暄、打趣、调侃对方,似乎一切又回到了当初的单纯美好。</p><p>看着舞台上活泼可爱的学弟学妹们,如同一群机灵的小精灵,清澈的眼神,稚嫩的肢体,轻快地步伐,用他们那热情洋溢的舞姿渲染着在场的每一个人,我知道,我不应该羡慕嫉妒他们,不应该顾自怜惜逝去的青春,不应该感叹夕阳无限好,曾经,我们也拥有过,曾经,我们也年轻过,曾经,我们也灿烂过。我深深地告诉自己,人生的每个阶段都是美的,年轻有年轻的活力,成熟也有成熟的魅力。多—份稳重、淡然、优雅,也是漫漫时光掠影遗留下的.珍贵赏赐。</p>'),(93,'2022-04-25 09:06:12','挫折路上,坚持常在心间','回头看看,你会不会发现,曾经的你在这里摔倒过;回头看看,你是否发现,一次次地重复着,却从没爬起过。而如今,让我们把视线转向前方,那一道道金色的弧线,是流星飞逝的痕迹,或是成功运行的轨道。今天的你,是否要扬帆起航,让幸福来敲门?清晨的太阳撒向大地,神奇的宇宙赋予它神奇的色彩,大自然沐浴着春光,世界因太阳的照射而精彩,林中百鸟啾啾,河水轻轻流淌,汇成清宁的山间小调。','upload/news_picture3.jpg','<p>回头看看,你会不会发现,曾经的你在这里摔倒过;回头看看,你是否发现,一次次地重复着,却从没爬起过。而如今,让我们把视线转向前方,那一道道金色的弧线,是流星飞逝的痕迹,或是成功运行的轨道。今天的你,是否要扬帆起航,让幸福来敲门?</p><p>清晨的太阳撒向大地,神奇的宇宙赋予它神奇的色彩,大自然沐浴着春光,世界因太阳的照射而精彩,林中百鸟啾啾,河水轻轻流淌,汇成清宁的山间小调。</p><p>是的,面对道途上那无情的嘲讽,面对步伐中那重复的摔跤,面对激流与硬石之间猛烈的碰撞,我们必须选择那富于阴雨,却最终见到彩虹的荆棘路。也许,经历了那暴风雨的洗礼,我们便会变得自信,幸福也随之而来。</p><p>司马迁屡遭羞辱,却依然在狱中撰写《史记》,作为一名史学家,不因王权而极度赞赏,也不因卑微而极度批判,然而他在坚持自己操守的同时,却依然要受统治阶级的阻碍,他似乎无权选择自己的本职。但是,他不顾于此,只是在面对道途的阻隔之时,他依然选择了走下去的信念。终于一部开山巨作《史记》诞生,为后人留下一份馈赠,也许在他完成毕生的杰作之时,他微微地笑了,没有什么比梦想实现更快乐的了......</p><p>	或许正如“长风破浪会有时,直挂云帆济沧海”一般,欣欣然地走向看似深渊的崎岖路,而在一番耕耘之后,便会发现这里另有一番天地。也许这就是困难与快乐的交融。</p><p>也许在形形色色的社会中,我们常能看到一份坚持,一份自信,但这里却还有一类人。这类人在暴风雨来临之际,只会闪躲,从未懂得这也是一种历炼,这何尝不是一份快乐。在阴暗的角落里,总是独自在哭,带着伤愁,看不到一点希望。</p><p>我们不能堕落于此,而要像海燕那般,在苍茫的大海上,高傲地飞翔,任何事物都无法阻挡,任何事都是幸福快乐的。</p>'),(94,'2022-04-25 09:06:12','挫折是另一个生命的开端','当遇到挫折或失败,你是看见失败还是看见机会?挫折是我们每个人成长的必经之路,它不是你想有就有,想没有就没有的。有句名言说的好,如果你想一生摆脱苦难,你就得是神或者是死尸。这句话形象地说明了挫折是伴随着人生的,是谁都逃不掉的。','upload/news_picture4.jpg','<p>当遇到挫折或失败,你是看见失败还是看见机会?</p><p>挫折是我们每个人成长的必经之路,它不是你想有就有,想没有就没有的。有句名言说的好,如果你想一生摆脱苦难,你就得是神或者是死尸。这句话形象地说明了挫折是伴随着人生的,是谁都逃不掉的。</p><p>人生在世,从古到今,不分天子平民,机遇虽有不同,但总不免有身陷困境或遭遇难题之处,这时候唯有通权达变,才能使人转危为安,甚至反败为胜。</p><p>大部分的人,一生当中,最痛苦的经验是失去所爱的人,其次是丢掉一份工作。其实,经得起考验的人,就算是被开除也不会惊慌,要学会面对。</p><p>	“塞翁失马,焉知非福。”人生的道路,并不是每一步都迈向成功,这就是追求的意义。我们还要认识到一点,挫折作为一种情绪状态和一种个人体验,各人的耐受性是大不相同的,有的人经历了一次次挫折,就能够坚忍不拔,百折不挠;有的人稍遇挫折便意志消沉,一蹶不振。所以,挫折感是一种主观感受,因为人的目的和需要不同,成功标准不同,所以同一种活动对于不同的人可能会造成不同的挫折感受。</p><p>凡事皆以平常心来看待,对于生命顺逆不要太执著。能够“破我执”是很高层的人生境界。</p><p>人事的艰难就是一种考验。就像—支剑要有磨刀来磨,剑才会利:一块璞玉要有粗石来磨,才会发出耀眼的光芒。我们能够做到的,只是如何减少、避免那些由于自身的原因所造成的挫折,而在遇到痛苦和挫折之后,则力求化解痛苦,争取幸福。我们要知道,痛苦和挫折是双重性的,它既是我们人生中难以完全避免的,也是我们在争取成功时,不可缺少的一种动力。因为我认为,推动我们奋斗的力量,不仅仅是对成功的渴望,还有为摆脱痛苦和挫折而进行的奋斗。</p>'),(95,'2022-04-25 09:06:12','你要去相信,没有到不了的明天','有梦想就去努力,因为在这一辈子里面,现在不去勇敢的努力,也许就再也没有机会了。你要去相信,一定要相信,没有到不了的明天。不要被命运打败,让自己变得更强大。不管你现在是一个人走在异乡的街道上始终没有找到一丝归属感,还是你在跟朋友们一起吃饭开心址笑着的时候闪过一丝落寞。','upload/news_picture5.jpg','<p>有梦想就去努力,因为在这一辈子里面,现在不去勇敢的努力,也许就再也没有机会了。你要去相信,一定要相信,没有到不了的明天。不要被命运打败,让自己变得更强大。</p><p>不管你现在是一个人走在异乡的街道上始终没有找到一丝归属感,还是你在跟朋友们一起吃饭开心址笑着的时候闪过一丝落寞。</p><p>	不管你现在是在图书馆里背着怎么也看不进去的英语单词,还是你现在迷茫地看不清未来的方向不知道要往哪走。</p><p>不管你现在是在努力着去实现梦想却没能拉近与梦想的距离,还是你已经慢慢地找不到自己的梦想了。</p><p>你都要去相信,没有到不了的明天。</p><p>	有的时候你的梦想太大,别人说你的梦想根本不可能实现;有的时候你的梦想又太小,又有人说你胸无大志;有的时候你对死党说着将来要去环游世界的梦想,却换来他的不屑一顾,于是你再也不提自己的梦想;有的时候你突然说起将来要开个小店的愿望,却发现你讲述的那个人,并没有听到你在说什么。</p><p>不过又能怎么样呢,未来始终是自己的,梦想始终是自己的,没有人会来帮你实现它。</p><p>也许很多时候我们只是需要朋友的一句鼓励,一句安慰,却也得不到。但是相信我,世界上还有很多人,只是想要和你说说话。</p><p>因为我们都一样。一样的被人说成固执,一样的在追逐他们眼里根本不在意的东西。</p><p>所以,又有什么关系呢,别人始终不是你、不能懂你的心情,你又何必多去解释呢。这个世界会来阻止你,困难也会接踵而至,其实真正关键的只有自己,有没有那个倔强。</p><p>这个世界上没有不带伤的人,真正能治愈自己的,只有自己。</p>'),(96,'2022-04-25 09:06:12','离开是一种痛苦,是一种勇气,但同样也是一个考验,是一个新的开端','无穷无尽是离愁,天涯海角遍寻思。当离别在即之时,当面对着相濡以沫兄弟般的朋友时,当面对着经历了四年的磨合而形成的真挚友谊之时,我内心激动无语,说一声再见,道一声珍重都很难出口。回想自己四年大学的风风雨雨,回想我们曾经共同经历的岁月流年,我感谢大家的相扶相依,感谢朋友们的莫大支持与帮助。虽然舍不得,但离别的脚步却不因我们的挚情而停滞。','upload/news_picture6.jpg','<p>无穷无尽是离愁,天涯海角遍寻思。当离别在即之时,当面对着相濡以沫兄弟般的朋友时,当面对着经历了四年的磨合而形成的真挚友谊之时,我内心激动无语,说一声再见,道一声珍重都很难出口。回想自己四年大学的风风雨雨,回想我们曾经共同经历的岁月流年,我感谢大家的相扶相依,感谢朋友们的莫大支持与帮助。虽然舍不得,但离别的脚步却不因我们的挚情而停滞。离别的确是一种痛苦,但同样也是我们走入社会,走向新环境、新领域的一个开端,希望大家在以后新的工作岗位上能够确定自己的新起点,坚持不懈,向着更新、更高的目标前进,因为人生最美好的东西永远都在最前方!</p><p>忆往昔峥嵘岁月,看今朝潮起潮落,望未来任重而道远。作为新时代的我们,就应在失败时,能拼搏奋起,去谱写人生的辉煌。在成功时,亦能居安思危,不沉湎于一时的荣耀、鲜花和掌声中,时时刻刻怀着一颗积极寻找自己新的奶酪的心,处变不惊、成败不渝,始终踏着自己坚实的步伐,从零开始,不断向前迈进,这样才能在这风起云涌、变幻莫测的社会大潮中成为真正的弄潮儿!</p>');
/*!40000 ALTER TABLE `news` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `shangpinfenlei`
--

DROP TABLE IF EXISTS `shangpinfenlei`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `shangpinfenlei` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `shangpinfenlei` varchar(200) DEFAULT NULL COMMENT '商品分类',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8 COMMENT='商品分类';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `shangpinfenlei`
--

LOCK TABLES `shangpinfenlei` WRITE;
/*!40000 ALTER TABLE `shangpinfenlei` DISABLE KEYS */;
INSERT INTO `shangpinfenlei` VALUES (31,'2022-04-25 09:06:12','商品分类1'),(32,'2022-04-25 09:06:12','商品分类2'),(33,'2022-04-25 09:06:12','商品分类3'),(34,'2022-04-25 09:06:12','商品分类4'),(35,'2022-04-25 09:06:12','商品分类5'),(36,'2022-04-25 09:06:12','商品分类6');
/*!40000 ALTER TABLE `shangpinfenlei` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `storeup`
--

DROP TABLE IF EXISTS `storeup`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `storeup` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `refid` bigint(20) DEFAULT NULL COMMENT '收藏id',
  `tablename` varchar(200) DEFAULT NULL COMMENT '表名',
  `name` varchar(200) NOT NULL COMMENT '收藏名称',
  `picture` varchar(200) NOT NULL COMMENT '收藏图片',
  `type` varchar(200) DEFAULT '1' COMMENT '类型(1:收藏,21:赞,22:踩)',
  `inteltype` varchar(200) DEFAULT NULL COMMENT '推荐类型',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='收藏表';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `storeup`
--

LOCK TABLES `storeup` WRITE;
/*!40000 ALTER TABLE `storeup` DISABLE KEYS */;
/*!40000 ALTER TABLE `storeup` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `token`
--

DROP TABLE IF EXISTS `token`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `token` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `username` varchar(100) NOT NULL COMMENT '用户名',
  `tablename` varchar(100) DEFAULT NULL COMMENT '表名',
  `role` varchar(100) DEFAULT NULL COMMENT '角色',
  `token` varchar(200) NOT NULL COMMENT '密码',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
  `expiratedtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '过期时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='token表';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `token`
--

LOCK TABLES `token` WRITE;
/*!40000 ALTER TABLE `token` DISABLE KEYS */;
/*!40000 ALTER TABLE `token` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `users`
--

DROP TABLE IF EXISTS `users`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `users` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `username` varchar(100) NOT NULL COMMENT '用户名',
  `password` varchar(100) NOT NULL COMMENT '密码',
  `role` varchar(100) DEFAULT '管理员' COMMENT '角色',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='用户表';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `users`
--

LOCK TABLES `users` WRITE;
/*!40000 ALTER TABLE `users` DISABLE KEYS */;
INSERT INTO `users` VALUES (1,'abo','abo','管理员','2022-04-25 09:06:12');
/*!40000 ALTER TABLE `users` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `yonghu`
--

DROP TABLE IF EXISTS `yonghu`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `yonghu` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `yonghuzhanghao` varchar(200) DEFAULT NULL COMMENT '用户账号',
  `mima` varchar(200) NOT NULL COMMENT '密码',
  `yonghuxingming` varchar(200) DEFAULT NULL COMMENT '用户姓名',
  `zhaopian` varchar(200) DEFAULT NULL COMMENT '照片',
  `xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
  `lianxifangshi` varchar(200) DEFAULT NULL COMMENT '联系方式',
  PRIMARY KEY (`id`),
  UNIQUE KEY `yonghuzhanghao` (`yonghuzhanghao`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COMMENT='用户';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `yonghu`
--

LOCK TABLES `yonghu` WRITE;
/*!40000 ALTER TABLE `yonghu` DISABLE KEYS */;
INSERT INTO `yonghu` VALUES (11,'2022-04-25 09:06:12','用户账号1','123456','用户姓名1','upload/yonghu_zhaopian1.jpg','男','13823888881'),(12,'2022-04-25 09:06:12','用户账号2','123456','用户姓名2','upload/yonghu_zhaopian2.jpg','男','13823888882'),(13,'2022-04-25 09:06:12','用户账号3','123456','用户姓名3','upload/yonghu_zhaopian3.jpg','男','13823888883'),(14,'2022-04-25 09:06:12','用户账号4','123456','用户姓名4','upload/yonghu_zhaopian4.jpg','男','13823888884'),(15,'2022-04-25 09:06:12','用户账号5','123456','用户姓名5','upload/yonghu_zhaopian5.jpg','男','13823888885'),(16,'2022-04-25 09:06:12','用户账号6','123456','用户姓名6','upload/yonghu_zhaopian6.jpg','男','13823888886');
/*!40000 ALTER TABLE `yonghu` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `zhihuandingdan`
--

DROP TABLE IF EXISTS `zhihuandingdan`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zhihuandingdan` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `zhihuanbianhao` varchar(200) DEFAULT NULL COMMENT '置换编号',
  `shangpinmingcheng` varchar(200) DEFAULT NULL COMMENT '商品名称',
  `pinpai` varchar(200) DEFAULT NULL COMMENT '品牌',
  `zhihuanzhanghao` varchar(200) DEFAULT NULL COMMENT '置换账号',
  `lianxidianhua` varchar(200) DEFAULT NULL COMMENT '联系电话',
  `zhihuanwupin` varchar(200) DEFAULT NULL COMMENT '置换物品',
  `wupintupian` varchar(200) DEFAULT NULL COMMENT '物品图片',
  `wupinpinpai` varchar(200) DEFAULT NULL COMMENT '物品品牌',
  `wupinchengse` varchar(200) DEFAULT NULL COMMENT '物品成色',
  `wupinxiangqing` longtext COMMENT '物品详情',
  `jiaohuandizhi` varchar(200) DEFAULT NULL COMMENT '交换地址',
  `yonghuzhanghao` varchar(200) DEFAULT NULL COMMENT '用户账号',
  `yonghuxingming` varchar(200) DEFAULT NULL COMMENT '用户姓名',
  `lianxifangshi` varchar(200) DEFAULT NULL COMMENT '联系方式',
  `sfsh` varchar(200) DEFAULT '否' COMMENT '是否审核',
  `shhf` longtext COMMENT '审核回复',
  PRIMARY KEY (`id`),
  UNIQUE KEY `zhihuanbianhao` (`zhihuanbianhao`)
) ENGINE=InnoDB AUTO_INCREMENT=57 DEFAULT CHARSET=utf8 COMMENT='置换订单';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `zhihuandingdan`
--

LOCK TABLES `zhihuandingdan` WRITE;
/*!40000 ALTER TABLE `zhihuandingdan` DISABLE KEYS */;
INSERT INTO `zhihuandingdan` VALUES (51,'2022-04-25 09:06:12','1111111111','商品名称1','品牌1','置换账号1','13823888881','置换物品1','upload/zhihuandingdan_wupintupian1.jpg','物品品牌1','全新','物品详情1','交换地址1','用户账号1','用户姓名1','13823888881','是',''),(52,'2022-04-25 09:06:12','2222222222','商品名称2','品牌2','置换账号2','13823888882','置换物品2','upload/zhihuandingdan_wupintupian2.jpg','物品品牌2','全新','物品详情2','交换地址2','用户账号2','用户姓名2','13823888882','是',''),(53,'2022-04-25 09:06:12','3333333333','商品名称3','品牌3','置换账号3','13823888883','置换物品3','upload/zhihuandingdan_wupintupian3.jpg','物品品牌3','全新','物品详情3','交换地址3','用户账号3','用户姓名3','13823888883','是',''),(54,'2022-04-25 09:06:12','4444444444','商品名称4','品牌4','置换账号4','13823888884','置换物品4','upload/zhihuandingdan_wupintupian4.jpg','物品品牌4','全新','物品详情4','交换地址4','用户账号4','用户姓名4','13823888884','是',''),(55,'2022-04-25 09:06:12','5555555555','商品名称5','品牌5','置换账号5','13823888885','置换物品5','upload/zhihuandingdan_wupintupian5.jpg','物品品牌5','全新','物品详情5','交换地址5','用户账号5','用户姓名5','13823888885','是',''),(56,'2022-04-25 09:06:12','6666666666','商品名称6','品牌6','置换账号6','13823888886','置换物品6','upload/zhihuandingdan_wupintupian6.jpg','物品品牌6','全新','物品详情6','交换地址6','用户账号6','用户姓名6','13823888886','是','');
/*!40000 ALTER TABLE `zhihuandingdan` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `zhihuanshangpin`
--

DROP TABLE IF EXISTS `zhihuanshangpin`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zhihuanshangpin` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `shangpinmingcheng` varchar(200) DEFAULT NULL COMMENT '商品名称',
  `tupian` varchar(200) DEFAULT NULL COMMENT '图片',
  `zhihuanzhuangtai` varchar(200) DEFAULT NULL COMMENT '置换状态',
  `shangpinfenlei` varchar(200) DEFAULT NULL COMMENT '商品分类',
  `chengse` varchar(200) DEFAULT NULL COMMENT '成色',
  `pinpai` varchar(200) DEFAULT NULL COMMENT '品牌',
  `shangpinxiangqing` longtext COMMENT '商品详情',
  `zhihuanzhanghao` varchar(200) DEFAULT NULL COMMENT '置换账号',
  `zhihuanxingming` varchar(200) DEFAULT NULL COMMENT '置换姓名',
  `lianxidianhua` varchar(200) DEFAULT NULL COMMENT '联系电话',
  `clicktime` datetime DEFAULT NULL COMMENT '最近点击时间',
  `clicknum` int(11) DEFAULT '0' COMMENT '点击次数',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=47 DEFAULT CHARSET=utf8 COMMENT='置换商品';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `zhihuanshangpin`
--

LOCK TABLES `zhihuanshangpin` WRITE;
/*!40000 ALTER TABLE `zhihuanshangpin` DISABLE KEYS */;
INSERT INTO `zhihuanshangpin` VALUES (41,'2022-04-25 09:06:12','商品名称1','upload/zhihuanshangpin_tupian1.jpg','已置换','商品分类1','全新','品牌1','商品详情1','置换账号1','置换姓名1','13823888881','2022-04-25 17:06:12',1),(42,'2022-04-25 09:06:12','商品名称2','upload/zhihuanshangpin_tupian2.jpg','已置换','商品分类2','全新','品牌2','商品详情2','置换账号2','置换姓名2','13823888882','2022-04-25 17:06:12',2),(43,'2022-04-25 09:06:12','商品名称3','upload/zhihuanshangpin_tupian3.jpg','已置换','商品分类3','全新','品牌3','商品详情3','置换账号3','置换姓名3','13823888883','2022-04-25 17:06:12',3),(44,'2022-04-25 09:06:12','商品名称4','upload/zhihuanshangpin_tupian4.jpg','已置换','商品分类4','全新','品牌4','商品详情4','置换账号4','置换姓名4','13823888884','2022-04-25 17:06:12',4),(45,'2022-04-25 09:06:12','商品名称5','upload/zhihuanshangpin_tupian5.jpg','已置换','商品分类5','全新','品牌5','商品详情5','置换账号5','置换姓名5','13823888885','2022-04-25 17:06:12',5),(46,'2022-04-25 09:06:12','商品名称6','upload/zhihuanshangpin_tupian6.jpg','已置换','商品分类6','全新','品牌6','商品详情6','置换账号6','置换姓名6','13823888886','2022-04-25 17:06:12',6);
/*!40000 ALTER TABLE `zhihuanshangpin` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `zhihuanzhanghu`
--

DROP TABLE IF EXISTS `zhihuanzhanghu`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zhihuanzhanghu` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `zhihuanzhanghao` varchar(200) DEFAULT NULL COMMENT '置换账号',
  `mima` varchar(200) NOT NULL COMMENT '密码',
  `zhihuanxingming` varchar(200) DEFAULT NULL COMMENT '置换姓名',
  `zhaopian` varchar(200) DEFAULT NULL COMMENT '照片',
  `xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
  `lianxidianhua` varchar(200) DEFAULT NULL COMMENT '联系电话',
  PRIMARY KEY (`id`),
  UNIQUE KEY `zhihuanzhanghao` (`zhihuanzhanghao`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COMMENT='置换账户';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `zhihuanzhanghu`
--

LOCK TABLES `zhihuanzhanghu` WRITE;
/*!40000 ALTER TABLE `zhihuanzhanghu` DISABLE KEYS */;
INSERT INTO `zhihuanzhanghu` VALUES (21,'2022-04-25 09:06:12','置换账号1','123456','置换姓名1','upload/zhihuanzhanghu_zhaopian1.jpg','男','13823888881'),(22,'2022-04-25 09:06:12','置换账号2','123456','置换姓名2','upload/zhihuanzhanghu_zhaopian2.jpg','男','13823888882'),(23,'2022-04-25 09:06:12','置换账号3','123456','置换姓名3','upload/zhihuanzhanghu_zhaopian3.jpg','男','13823888883'),(24,'2022-04-25 09:06:12','置换账号4','123456','置换姓名4','upload/zhihuanzhanghu_zhaopian4.jpg','男','13823888884'),(25,'2022-04-25 09:06:12','置换账号5','123456','置换姓名5','upload/zhihuanzhanghu_zhaopian5.jpg','男','13823888885'),(26,'2022-04-25 09:06:12','置换账号6','123456','置换姓名6','upload/zhihuanzhanghu_zhaopian6.jpg','男','13823888886');
/*!40000 ALTER TABLE `zhihuanzhanghu` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2022-04-25 17:08:43

五.关键代码

java">package com.controller;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.TokenEntity;
import com.entity.UserEntity;
import com.service.TokenService;
import com.service.UserService;
import com.utils.CommonUtil;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;

/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private TokenService tokenService;

	/**
	 * 登录
	 */
	@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		return R.ok().put("token", token);
	}
	
	/**
	 * 注册
	 */
	@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

	/**
	 * 退出
	 */
	@GetMapping(value = "logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		return R.ok("退出成功");
	}
	
	/**
     * 密码重置
     */
    @IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
	
	/**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,UserEntity user){
        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
    	PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }

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

    /**
     * 信息
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
    	Long id = (Long)request.getSession().getAttribute("userId");
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }

    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
    	UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));
    	if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {
    		return R.error("用户名已存在。");
    	}
        userService.updateById(user);//全部更新
        return R.ok();
    }

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}

六.论文目录参考

七.源码获取

感谢大家的阅读,如有不懂的问题可以评论区交流或私聊!

喜欢文章可以点赞、收藏、关注、评论啦 、👇🏻获取源码+V:jsjbysj88👇🏻


http://www.niftyadmin.cn/n/5035533.html

相关文章

【Linux】—— 在Linux上进行读写文件操作

前言&#xff1a; 在之前&#xff0c;我已经对进程的相关知识进行了详细的介绍。本期开始&#xff0c;我们将要学习的是关于 “基础I/O”的知识&#xff01;&#xff01;&#xff01; 目录 &#xff08;一&#xff09;C文件接口 &#xff08;二&#xff09;系统文件I/O 1、接…

Vue2动态显示时间

1&#xff1a;先上效果图&#xff1a; 2&#xff1a;注意点&#xff1a; &#xff08;1&#xff09;created( ) 与 mounted( )的区别就是&#xff1a; created 在模板渲染成html前调用&#xff0c;即通常初始化某些属性值&#xff0c;然后再渲染成视…

分界线-积木游戏 demo

目录 匿名信 题目描述: 输入描述 输出描述: 示例: Java实现 (期待看官能够修复一下, 害): 二、积木游戏 题目描述: 输入描述 输出描述 补充说明 示例 Java代码实现 匿名信 题目描述: 电视剧《分界线》里面有一个片段&#xff0c;男主为了向警察透露案件细节&…

基于Yolov8的野外烟雾检测(3):动态蛇形卷积(Dynamic Snake Convolution),实现暴力涨点 | ICCV2023

目录 1.Yolov8介绍 2.野外火灾烟雾数据集介绍 3.Dynamic Snake Convolution 3.1 Dynamic Snake Convolution加入到yolov8 4.训练结果分析 5.系列篇 1.Yolov8介绍 Ultralytics YOLOv8是Ultralytics公司开发的YOLO目标检测和图像分割模型的最新版本。YOLOv8是一种尖端的、最…

vue3写垂直轮播效果(translateY)

实现思路&#xff1a;卡片移动使用css的translateY属性实现&#xff0c;每个卡片从最下面移动到最上面&#xff0c;然后直接移动到最下面&#xff0c;每次改变的位移是固定的&#xff0c;假设每次移动50px&#xff0c;当移动到最小时&#xff0c;就让translataY为0&#xff0c;…

蓝桥杯嵌入式创建第一个工程(点亮led灯)

蓝桥杯嵌入式创建第一个工程&#xff08;点亮led灯&#xff09; 一.keil导入stm32G431RX板级芯片包1.1 下载板级芯片包1.2 导入芯片包1.2.1 我们首先打开keil 点击Pack installer,如图**1.2.2 然后选中file→import 如图**1.2.3 选择我们下好的芯片包即可1.2.4 确定安装成功 二…

无涯教程-JavaScript - RAND函数

描述 RAND函数返回大于或等于0且小于1的均匀分布的随机实数。每次计算工作表时,都会返回一个新的随机实数。 语法 RAND ()争论 RAND函数没有参数。 Notes 您可以在a和b之间生成一个随机实数,其中 RAND ()*(b-a)a 如果要使用RAND生成随机数,但又不想每次计算单元格时都更改…

爬虫 — Scrapy 框架(二)

目录 一、Scrapy 核心文件1、spider2、Request3、构造 post 请求4、response 二、案例三、Scrapy 下载中间件1、执行顺序2、使用方法3、Download Middlewares 默认方法4、代理 IP4.1、工作原理4.2、分类4.3、查看 IP 地址4.4、常用代理 四、Scrapy 爬虫中间件五、Scrapy 下载图…