基于JAVA springboot+mybatis智慧生活分享平台设计和实现

基于JAVA springboot+mybatis智慧生活分享平台设计和实现

博主介绍:5年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域
作者主页 央顺技术团队
Java毕设项目精品实战案例《1000套》
可定制系统
欢迎点赞 收藏 ⭐留言
文末获取源码联系方式

文章目录

  • 基于JAVA springboot+mybatis智慧生活分享平台设计和实现
  • 主要功能模块设计:
  • 系统前端页面主要功能展示:
    • 分类查看详情数据:
    • 用户登录注册:
    • 详情信息查看:
    • 用户交流评论信息:
    • 评论controller层代码
    • 发表文章分享信息
    • 我的个人信息和收藏信息以及关注用户等
    • 关注用户和取消关注用户
    • 对喜欢的文章进行收藏和取消收藏
  • 后台管理员信息:
  • 获取源码:

主要功能模块设计:

登录注册、首页信息浏览、分类查看、详情查看、评论、收藏、浏览量、关注、以及后台管理
主要技术:Java、springmvc、mybatis、mysql、tomcat、jquery、layui、bootstarp、JavaScript、html、css、jsp、log4j等一些常见的基本技术。

系统前端页面主要功能展示:

在这里插入图片描述

分类查看详情数据:

在这里插入图片描述

用户登录注册:

在这里插入图片描述

详情信息查看:

在这里插入图片描述

用户交流评论信息:

在这里插入图片描述

评论controller层代码

package com.smj.controller.admin;import java.util.HashMap;
import java.util.List;
import java.util.Map;import javax.annotation.Resource;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import com.smj.entity.Comment;
import com.smj.entity.User;
import com.smj.service.ArticleService;
import com.smj.service.CommentService;
import com.smj.service.ReplyService;
import com.smj.service.UserService;
import com.smj.util.StringUtil;/*** 评论Controller层* @author smj**/
@RestController
@RequestMapping("/admin/comment")
public class CommentAdminController {@Resourceprivate CommentService commentService;@Resourceprivate UserService userService;@Resourceprivate ReplyService replyService;@Resourceprivate ArticleService articleService;/*** 分页查询评论* @Title: list  * @param comment  评论实体* @param commentDates  时间段 (搜索用到)* @param page  当前页* @return  参数说明* @return Map<String,Object>    返回类型 * @throws*/@RequestMapping("/list")public Map<String, Object> list(Comment comment,@RequestParam(value = "commentDates", required = false) String commentDates,@RequestParam(value = "page", required = false) Integer page,@RequestParam(value = "pageSize", required = false) Integer pageSize,@RequestParam(value = "nickname", required = false) String nickname) {String s_bCommentDate = null; // 开始时间String s_eCommentDate = null; // 结束时间if (StringUtil.isNotEmpty(commentDates)) {String[] strs = commentDates.split(" - "); // 拆分时间段s_bCommentDate = strs[0];s_eCommentDate = strs[1];}Integer userId = null;Map<String, Object> resultMap = new HashMap<String, Object>();if (StringUtil.isNotEmpty(nickname)) {User user = userService.findByTrueName(nickname);if (user != null) {userId = user.getUserId();}if (userId == null) {resultMap.put("errorInfo", "用户昵称不存在,没有评论!");} else {resultMap.put("errorNo", 0);}} else {resultMap.put("errorNo", 0);}List<Comment> commentList = commentService.list(comment, s_bCommentDate, s_eCommentDate, page - 1, pageSize,userId);Long total = commentService.getCount(comment, s_bCommentDate, s_eCommentDate, userId);resultMap.put("data", commentList);resultMap.put("total", total);return resultMap;}/*** 删除评论* @param ids* @return*/@RequestMapping("/delete")public Map<String, Object> delete(@RequestParam(value = "commentId") String ids) {String[] idsStr = ids.split(","); // 拆分ids字符串Map<String, Object> resultMap = new HashMap<String, Object>();for (int i = 0; i < idsStr.length; i++) {Integer articleId = commentService.getArticleId(Integer.parseInt(idsStr[i]));commentService.delete(Integer.parseInt(idsStr[i]));if (articleId != null) {articleService.reduceComment(articleId);}}resultMap.put("errorNo", 0);resultMap.put("data", 1);return resultMap;}}

发表文章分享信息

在这里插入图片描述

我的个人信息和收藏信息以及关注用户等

在这里插入图片描述

关注用户和取消关注用户

在这里插入图片描述

对喜欢的文章进行收藏和取消收藏

在这里插入图片描述

后台管理员信息:

后台主要功能模块为:
1.用户模块管理:用户登录、用户注册、用户的查询、添加、删除操作、
2.智慧生活分享管理:分享列表的展示、添加、修改、删除操作、
3.智慧生活分享详情管理:智慧生活笔记详情列表的查看、添加、删除等操作、
4.管理员信息管理:管理员信息的查看、修改、
5.公告信息管理:公告信息的查看、添加、修改、删除操作、
6.用户模块管理:用户列表查询、添加、删除、
7.用户评论模块管理:用户评论查询、添加、删除、
8.注销退出登录管理
在这里插入图片描述

获取源码:

大家点赞、收藏、关注、评论啦
🍅查看下方微信号获取联系方式 📝
🚀🚀🚀精彩系列推荐
Java毕设项目精品实战案例《1000套》
精彩专栏推荐订阅:在下方专栏

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FL Studio Producer Edition2024中文进阶版Win/Mac

FL Studio Producer Edition&#xff0c;特别是其【中文进阶版 Win/Mac】&#xff0c;是数字音乐制作领域中的一款知名软件。它为广大音乐制作人、声音工程师以及音乐爱好者提供了一个从音乐构思到最终作品发布的完整解决方案。这个版本特别为中文用户优化&#xff0c;并兼容W…

Leetcode——hot3最长连续序列

最长连续序列 class Solution {public int longestConsecutive(int[] nums) {if(nums.length 0 || nums.length 1){return nums.length;}Arrays.sort(nums);int count 1;int max 1;for(int i 0; i < nums.length - 1; i){if(nums[i1] - nums[i] 1){count;if(count &…

[Linux]文件基础-如何管理文件

回顾C语言之 - 文件如何被写入 fopen fwrite fread fclose fseek … 这一系列函数都是C语言中对文件进行的操作&#xff1a; int main() {FILE* fpfopen("text","w");char str[20]"write into text";fputs(str,fp);fclose(fp);return 0; }而上…

中间件-Nginx漏洞整改(限制IP访问隐藏nginx版本信息)

中间件-Nginx漏洞整改&#xff08;限制IP访问&隐藏nginx版本信息&#xff09; 一、限制IP访问1.1 配置Nginx的ACL1.2 重载Nginx配置1.3 验证结果 二、隐藏nginx版本信息2.1 打开Nginx配置文件2.2 隐藏Nginx版本信息2.3 保存并重新加载Nginx配置2.4 验证结果2.5 验证隐藏版本…

MATLAB环境下基于高斯滤波器-广义拉普拉斯算子的细胞核自动检测

作为病理图像分析的基础&#xff0c;细胞核检测可为细胞形态、纹理等多种相关分析提供支持&#xff0c;对于临床诊断具有重要意义。但是细胞核的人工识别过程十分费时费力&#xff0c;并且不同医生之间存在主观标注差异。因此&#xff0c;利用计算机技术进行自动检测能够更为客…

3、函数定义,函数调用,this指向总结,闭包

一、函数的定义方式 1、函数声明 function demo1() {var num 12var result Math.pow(num,2)//指数函数return result }2、函数表达式 var demo2 function (x,y) { //内置对象arguments前面的两个参数 是 x,yvar sum arguments[0] arguments[1]console.log(sum) }3、构…

BUGKU-WEB 备份是个好习惯

题目描述 题目截图如下&#xff1a; 进入场景看看&#xff1a; 解题思路 看源码看提示&#xff1a;备份是个好习惯扫描目录md5弱比较 相关工具 御剑md5解密&#xff1a;https://www.somd5.com/ 解题步骤 看到的这串字符&#xff0c;有点像md5&#xff1f; d41d8cd98…

面试总结之JVM入门

文章目录 &#x1f412;个人主页&#x1f3c5;JavaEE系列专栏&#x1f4d6;前言&#xff1a;&#x1f380;你为什么要学习JVM&#xff1f;&#x1f380;JVM的作用 &#x1f380;JVM的构成&#xff08;5大类&#xff09;&#x1f3e8;1.类加载系统&#x1f415;类什么时候会被加…

【Flink精讲】Flink状态及Checkpoint调优

RocksDB大状态调优 RocksDB 是基于 LSM Tree 实现的&#xff08;类似 HBase&#xff09; &#xff0c;写数据都是先缓存到内存中&#xff0c; 所以 RocksDB 的写请求效率比较高。 RocksDB 使用内存结合磁盘的方式来存储数据&#xff0c;每 次获取数据时&#xff0c;先从内存中 …

1.0 RK3399项目开发实录-Ubuntu环境搭建(物联技术666)

1.下载Ubuntu所需的版本&#xff1a;Index of /releases 2.安装vmplayer:Download VMware Workstation Player | VMware 3.安装Ubuntu时&#xff0c;磁盘空间尽量大些&#xff0c;开发板系统包都比较大&#xff0c;避免存不下&#xff0c;建议空间100G。 关闭Ubuntu自动更新…

ConvNeXt V2:用MAE训练CNN

论文名称&#xff1a;ConvNeXt V2: Co-designing and Scaling ConvNets with Masked Autoencoders 发表时间&#xff1a;CVPR2023 code链接&#xff1a;代码 作者及组织: Sanghyun Woo&#xff0c;Shoubhik Debnath来自KAIST和Meta AI。 前言 ConvNextV2是借助MAE的思想来训练…

网络安全与信创产业发展:构建数字时代的护城河

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua&#xff0c;在这里我会分享我的知识和经验。&#x…

再见,Visual Basic——曾经风靡一时的编程语言

2020年3月&#xff0c;微软团队宣布了对Visual Basic&#xff08;VB&#xff09;的“终审判决”&#xff1a;不再进行开发或增加新功能。这意味着曾经风光无限的VB正式退出了历史舞台。 VB是微软推出的首款可视化编程软件&#xff0c;自1991年问世以来&#xff0c;便受到了广大…

编曲学习:和声小调 终止式 离调和弦 转调应用

和声小调 音阶 大调音程关系排列:全 全 半 全 全 全 半 小调音程关系排列:全 半 全 全 半 全 全 C大调音阶: 1 2 3 4 5 6 7 1 C小调音阶: 1 2 b3 4 5 b6 b7 1 C大调基本音级构成的和弦: Cmaj7 Dmin7 Emin7 Fmaj7 G7 Amin7 Bm7-5 C小调基本音级构成的和弦: Cmin7 D…

【web APIs】1、(学习笔记)有案例!

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、概念二、使用步骤1.获取DOM对象2.操作元素内容3.属性修改3.1.常用属性修改3.2.控制样式属性3.3.操作类名(className) 操作CSS3.4.操作表单元素属性3.5.自定…

【Excel PDF 系列】EasyExcel + iText 库

你知道的越多&#xff0c;你不知道的越多 点赞再看&#xff0c;养成习惯 如果您有疑问或者见解&#xff0c;欢迎指教&#xff1a; 企鹅&#xff1a;869192208 文章目录 前言转换前后效果引入 pom 配置代码实现定义 ExcelDataVo 对象主方法EasyExcel 监听器 前言 最近遇到生成 …

JVM跨代引用垃圾回收

1. 跨代引用概述 在Java堆内存中&#xff0c;年轻代和老年代之间存在的对象相互引用&#xff0c;假设现在要进行一次新生代的YGC&#xff0c;但新生代中的对象可能被老年代所引用的&#xff0c;为了找到新生代中的存活对象&#xff0c;不得不遍历整个老年代。这样明显效率很低…

如何移除禁用WordPress默认小工具(附WordPress默认小工具名称)

WordPress 自带的小工具非常多&#xff0c;但是我们用到的也就那么几种&#xff0c;甚至一种都不会用到&#xff0c;所以很有必要注销&#xff08;去除&#xff09;掉一些不用的小工具。实现的方法也很简单&#xff0c;只需将以下代码&#xff0c;根据自己的情况删除需要用的小…

Atcoder ABC341 E - Alternating String

Alternating String&#xff08;交替字符串&#xff09; 时间限制&#xff1a;3s 内存限制&#xff1a;1024MB 【原题地址】 所有图片源自Atcoder&#xff0c;题目译文源自脚本Atcoder Better! 点击此处跳转至原题 【问题描述】 【输入格式】 每个查询 q u e r y i query…