当前位置: 首页 > ai >正文

基于SpringBoot的动漫交流与推荐平台-036

一、项目技术栈

Java开发工具:JDK1.8
后端框架:SpringBoot
前端:采用HTML和Vue相结合开发
数据库:MySQL5.7和Navicat管理工具结合
服务器:Tomcat8.5
开发软件:IDEA / Eclipse
是否Maven项目:是

二、功能介绍

本系统以用户与管理员两类人,作为目标用户,其中用户主要功能包含用户的注册与登录,查看动漫信息进行订阅等,对账号相关信息的修改;
管理员主要功能包括了对用户信息、动漫信息、订阅信息、更新通知、在线留言、社区互动等管理;管理员可以实现最高权限级别的全系统管理。

三、项目视频

基于SpringBoot的动漫交流与推荐平台-036

四、功能截图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、代码实现
动漫分类

package com.controller;import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
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.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.DongmanfenleiEntity;
import com.entity.view.DongmanfenleiView;import com.service.DongmanfenleiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.MapUtils;
import com.utils.CommonUtil;
import java.io.IOException;/*** 源码需要+V:HadesTYT*/
@RestController
@RequestMapping("/dongmanfenlei")
public class DongmanfenleiController {@Autowiredprivate DongmanfenleiService dongmanfenleiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,DongmanfenleiEntity dongmanfenlei,HttpServletRequest request){EntityWrapper<DongmanfenleiEntity> ew = new EntityWrapper<DongmanfenleiEntity>();PageUtils page = dongmanfenleiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dongmanfenlei), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,DongmanfenleiEntity dongmanfenlei, HttpServletRequest request){EntityWrapper<DongmanfenleiEntity> ew = new EntityWrapper<DongmanfenleiEntity>();PageUtils page = dongmanfenleiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dongmanfenlei), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( DongmanfenleiEntity dongmanfenlei){EntityWrapper<DongmanfenleiEntity> ew = new EntityWrapper<DongmanfenleiEntity>();ew.allEq(MPUtil.allEQMapPre( dongmanfenlei, "dongmanfenlei")); return R.ok().put("data", dongmanfenleiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(DongmanfenleiEntity dongmanfenlei){EntityWrapper< DongmanfenleiEntity> ew = new EntityWrapper< DongmanfenleiEntity>();ew.allEq(MPUtil.allEQMapPre( dongmanfenlei, "dongmanfenlei")); DongmanfenleiView dongmanfenleiView =  dongmanfenleiService.selectView(ew);return R.ok("查询动漫分类成功").put("data", dongmanfenleiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){DongmanfenleiEntity dongmanfenlei = dongmanfenleiService.selectById(id);return R.ok().put("data", dongmanfenlei);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){DongmanfenleiEntity dongmanfenlei = dongmanfenleiService.selectById(id);return R.ok().put("data", dongmanfenlei);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody DongmanfenleiEntity dongmanfenlei, HttpServletRequest request){//ValidatorUtils.validateEntity(dongmanfenlei);dongmanfenleiService.insert(dongmanfenlei);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody DongmanfenleiEntity dongmanfenlei, HttpServletRequest request){//ValidatorUtils.validateEntity(dongmanfenlei);dongmanfenleiService.insert(dongmanfenlei);return R.ok();}/*** 修改*/@RequestMapping("/update")@Transactionalpublic R update(@RequestBody DongmanfenleiEntity dongmanfenlei, HttpServletRequest request){//ValidatorUtils.validateEntity(dongmanfenlei);dongmanfenleiService.updateById(dongmanfenlei);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){dongmanfenleiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}}

动漫信息

package com.controller;import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
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.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.DongmanxinxiEntity;
import com.entity.view.DongmanxinxiView;import com.service.DongmanxinxiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.MapUtils;
import com.utils.CommonUtil;
import java.io.IOException;
import com.service.StoreupService;
import com.entity.StoreupEntity;/*** 源码需要+V:HadesTYT*/
@RestController
@RequestMapping("/dongmanxinxi")
public class DongmanxinxiController {@Autowiredprivate DongmanxinxiService dongmanxinxiService;@Autowiredprivate StoreupService storeupService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,DongmanxinxiEntity dongmanxinxi,HttpServletRequest request){EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();PageUtils page = dongmanxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dongmanxinxi), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,DongmanxinxiEntity dongmanxinxi, HttpServletRequest request){EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();PageUtils page = dongmanxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dongmanxinxi), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( DongmanxinxiEntity dongmanxinxi){EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( dongmanxinxi, "dongmanxinxi")); return R.ok().put("data", dongmanxinxiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(DongmanxinxiEntity dongmanxinxi){EntityWrapper< DongmanxinxiEntity> ew = new EntityWrapper< DongmanxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( dongmanxinxi, "dongmanxinxi")); DongmanxinxiView dongmanxinxiView =  dongmanxinxiService.selectView(ew);return R.ok("查询动漫信息成功").put("data", dongmanxinxiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){DongmanxinxiEntity dongmanxinxi = dongmanxinxiService.selectById(id);dongmanxinxi.setClicktime(new Date());dongmanxinxiService.updateById(dongmanxinxi);return R.ok().put("data", dongmanxinxi);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){DongmanxinxiEntity dongmanxinxi = dongmanxinxiService.selectById(id);dongmanxinxi.setClicktime(new Date());dongmanxinxiService.updateById(dongmanxinxi);return R.ok().put("data", dongmanxinxi);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody DongmanxinxiEntity dongmanxinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(dongmanxinxi);dongmanxinxiService.insert(dongmanxinxi);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody DongmanxinxiEntity dongmanxinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(dongmanxinxi);dongmanxinxiService.insert(dongmanxinxi);return R.ok();}/*** 修改*/@RequestMapping("/update")@Transactionalpublic R update(@RequestBody DongmanxinxiEntity dongmanxinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(dongmanxinxi);dongmanxinxiService.updateById(dongmanxinxi);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){dongmanxinxiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 前端智能排序*/@IgnoreAuth@RequestMapping("/autoSort")public R autoSort(@RequestParam Map<String, Object> params,DongmanxinxiEntity dongmanxinxi, HttpServletRequest request,String pre){EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();Map<String, Object> newMap = new HashMap<String, Object>();Map<String, Object> param = new HashMap<String, Object>();Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, Object> entry = it.next();String key = entry.getKey();String newKey = entry.getKey();if (pre.endsWith(".")) {newMap.put(pre + newKey, entry.getValue());} else if (StringUtils.isEmpty(pre)) {newMap.put(newKey, entry.getValue());} else {newMap.put(pre + "." + newKey, entry.getValue());}}params.put("sort", "clicktime");params.put("order", "desc");PageUtils page = dongmanxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dongmanxinxi), params), params));return R.ok().put("data", page);}/*** 协同算法(按收藏推荐)*/@RequestMapping("/autoSort2")public R autoSort2(@RequestParam Map<String, Object> params,DongmanxinxiEntity dongmanxinxi, HttpServletRequest request){String userId = request.getSession().getAttribute("userId").toString();String inteltypeColumn = "dongmanfenlei";List<StoreupEntity> storeups = storeupService.selectList(new EntityWrapper<StoreupEntity>().eq("type", 1).eq("userid", userId).eq("tablename", "dongmanxinxi").orderBy("addtime", false));List<String> inteltypes = new ArrayList<String>();Integer limit = params.get("limit")==null?10:Integer.parseInt(params.get("limit").toString());List<DongmanxinxiEntity> dongmanxinxiList = new ArrayList<DongmanxinxiEntity>();//去重if(storeups!=null && storeups.size()>0) {for(StoreupEntity s : storeups) {dongmanxinxiList.addAll(dongmanxinxiService.selectList(new EntityWrapper<DongmanxinxiEntity>().eq(inteltypeColumn, s.getInteltype())));}}EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();params.put("sort", "id");params.put("order", "desc");PageUtils page = dongmanxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dongmanxinxi), params), params));List<DongmanxinxiEntity> pageList = (List<DongmanxinxiEntity>)page.getList();if(dongmanxinxiList.size()<limit) {int toAddNum = (limit-dongmanxinxiList.size())<=pageList.size()?(limit-dongmanxinxiList.size()):pageList.size();for(DongmanxinxiEntity o1 : pageList) {boolean addFlag = true;for(DongmanxinxiEntity o2 : dongmanxinxiList) {if(o1.getId().intValue()==o2.getId().intValue()) {addFlag = false;break;}}if(addFlag) {dongmanxinxiList.add(o1);if(--toAddNum==0) break;}}} else if(dongmanxinxiList.size()>limit) {dongmanxinxiList = dongmanxinxiList.subList(0, limit);}page.setList(dongmanxinxiList);return R.ok().put("data", page);}/*** (按值统计)*/@RequestMapping("/value/{xColumnName}/{yColumnName}")public R value(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();List<Map<String, Object>> result = dongmanxinxiService.selectValue(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}/*** (按值统计(多))*/@RequestMapping("/valueMul/{xColumnName}")public R valueMul(@PathVariable("xColumnName") String xColumnName,@RequestParam String yColumnNameMul, HttpServletRequest request) {String[] yColumnNames = yColumnNameMul.split(",");Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);List<List<Map<String, Object>>> result2 = new ArrayList<List<Map<String,Object>>>();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();for(int i=0;i<yColumnNames.length;i++) {params.put("yColumn", yColumnNames[i]);List<Map<String, Object>> result = dongmanxinxiService.selectValue(params, ew);for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}result2.add(result);}return R.ok().put("data", result2);}/*** (按值统计)时间统计类型*/@RequestMapping("/value/{xColumnName}/{yColumnName}/{timeStatType}")public R valueDay(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);params.put("timeStatType", timeStatType);EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();List<Map<String, Object>> result = dongmanxinxiService.selectTimeStatValue(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}/*** (按值统计)时间统计类型(多)*/@RequestMapping("/valueMul/{xColumnName}/{timeStatType}")public R valueMulDay(@PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType,@RequestParam String yColumnNameMul,HttpServletRequest request) {String[] yColumnNames = yColumnNameMul.split(",");Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("timeStatType", timeStatType);List<List<Map<String, Object>>> result2 = new ArrayList<List<Map<String,Object>>>();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();for(int i=0;i<yColumnNames.length;i++) {params.put("yColumn", yColumnNames[i]);List<Map<String, Object>> result = dongmanxinxiService.selectTimeStatValue(params, ew);for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}result2.add(result);}return R.ok().put("data", result2);}/*** 分组统计*/@RequestMapping("/group/{columnName}")public R group(@PathVariable("columnName") String columnName,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("column", columnName);EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();List<Map<String, Object>> result = dongmanxinxiService.selectGroup(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}/*** 总数量*/@RequestMapping("/count")public R count(@RequestParam Map<String, Object> params,DongmanxinxiEntity dongmanxinxi, HttpServletRequest request){EntityWrapper<DongmanxinxiEntity> ew = new EntityWrapper<DongmanxinxiEntity>();int count = dongmanxinxiService.selectCount(MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dongmanxinxi), params), params));return R.ok().put("data", count);}}

社区互动

package com.controller;import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
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.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.ForumEntity;
import com.entity.view.ForumView;import com.service.ForumService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.MapUtils;
import com.utils.CommonUtil;
import java.io.IOException;/*** 源码需要+V:HadesTYT*/
@RestController
@RequestMapping("/forum")
public class ForumController {@Autowiredprivate ForumService forumService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,ForumEntity forum,HttpServletRequest request){if(!request.getSession().getAttribute("role").toString().equals("管理员")) {forum.setUserid((Long)request.getSession().getAttribute("userId"));}EntityWrapper<ForumEntity> ew = new EntityWrapper<ForumEntity>();PageUtils page = forumService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, forum), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,ForumEntity forum, HttpServletRequest request){if(!request.getSession().getAttribute("role").toString().equals("管理员")) {forum.setUserid((Long)request.getSession().getAttribute("userId"));}EntityWrapper<ForumEntity> ew = new EntityWrapper<ForumEntity>();PageUtils page = forumService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, forum), params), params));return R.ok().put("data", page);}/*** 列表*/@IgnoreAuth@RequestMapping("/flist")public R flist(@RequestParam Map<String, Object> params,ForumEntity forum, HttpServletRequest request){EntityWrapper<ForumEntity> ew = new EntityWrapper<ForumEntity>();PageUtils page = forumService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, forum), params), params));return R.ok().put("data", page);}/*** 查询*/@RequestMapping("/query")public R query(ForumEntity forum){EntityWrapper< ForumEntity> ew = new EntityWrapper< ForumEntity>();ew.allEq(MPUtil.allEQMapPre( forum, "forum")); ForumView forumView =  forumService.selectView(ew);return R.ok("查询社区互动成功").put("data", forumView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){ForumEntity forum = forumService.selectById(id);return R.ok().put("data", forum);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){ForumEntity forum = forumService.selectById(id);return R.ok().put("data", forum);}/*** 论坛详情*/@IgnoreAuth@RequestMapping("/list/{id}")public R list(@PathVariable("id") String id){ForumEntity forum = forumService.selectById(id);getChilds(forum);return R.ok().put("data", forum);}private ForumEntity getChilds(ForumEntity forum) {List<ForumEntity> childs = new ArrayList<ForumEntity>();childs = forumService.selectList(new EntityWrapper<ForumEntity>().eq("parentid", forum.getId()));if(childs == null || childs.size()==0) {return null;}forum.setChilds(childs);for(ForumEntity forumEntity : childs) {getChilds(forumEntity);}return forum;}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ForumEntity forum, HttpServletRequest request){//ValidatorUtils.validateEntity(forum);forum.setUserid((Long)request.getSession().getAttribute("userId"));forumService.insert(forum);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody ForumEntity forum, HttpServletRequest request){//ValidatorUtils.validateEntity(forum);forum.setUserid((Long)request.getSession().getAttribute("userId"));forumService.insert(forum);return R.ok();}/*** 获取用户密保*/@RequestMapping("/security")@IgnoreAuthpublic R security(@RequestParam String username){ForumEntity forum = forumService.selectOne(new EntityWrapper<ForumEntity>().eq("", username));return R.ok().put("data", forum);}/*** 修改*/@RequestMapping("/update")@Transactional@IgnoreAuthpublic R update(@RequestBody ForumEntity forum, HttpServletRequest request){//ValidatorUtils.validateEntity(forum);forumService.updateById(forum);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){forumService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 前端智能排序*/@IgnoreAuth@RequestMapping("/autoSort")public R autoSort(@RequestParam Map<String, Object> params,ForumEntity forum, HttpServletRequest request,String pre){EntityWrapper<ForumEntity> ew = new EntityWrapper<ForumEntity>();Map<String, Object> newMap = new HashMap<String, Object>();Map<String, Object> param = new HashMap<String, Object>();Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, Object> entry = it.next();String key = entry.getKey();String newKey = entry.getKey();if (pre.endsWith(".")) {newMap.put(pre + newKey, entry.getValue());} else if (StringUtils.isEmpty(pre)) {newMap.put(newKey, entry.getValue());} else {newMap.put(pre + "." + newKey, entry.getValue());}}params.put("sort", "clicktime");params.put("order", "desc");PageUtils page = forumService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, forum), params), params));return R.ok().put("data", page);}}

上万套源码,每日分享源码,谢谢你的关注和喜欢~
HadesTYT

http://www.xdnf.cn/news/8150.html

相关文章:

  • 【学习笔记】计算机操作系统(五)—— 虚拟存储器
  • 数据库5——审计及触发器
  • 模拟地和数字地的连接方式
  • Java中的大根堆与小根堆
  • 无人机避障——深蓝学院浙大Ego-Planner规划部分
  • 工具看点 | 澳鹏多模态标注工具:构建AI认知的语义桥梁
  • 第四十五节:目标检测与跟踪-Meanshift/Camshift 算法
  • MCP Server Resource 开发学习文档
  • 记一次奇葩的错误,uniapp @tap点击失效
  • Nockchain项目部署教程
  • 从连接中枢到终端接入——解析工业无线AP与客户端的协同之道
  • 安装部署配置jenkins
  • Nginx 1.25.4交叉编译问题:编译器路径与aclocal.m4错误解决方案
  • wifi 如果检查失败,UI 就会出现延迟或缺失打勾的现象。
  • linux中部署jdk,开机自启动jdk以及linux中java开机自启某个jar包文件
  • 算法第26天 | 贪心算法、455.分发饼干、376. 摆动序列、 53. 最大子序和
  • 如何在Java中进行PDF合并
  • 软考 系统架构设计师系列知识点之杂项集萃(69)
  • Linux Shell编程(五)
  • 【鸿蒙开发】Hi3861学习笔记-超声波测距
  • HTB-Titanic
  • 多模态大语言模型arxiv论文略读(八十八)
  • LeetCode面试经典150题梳理
  • java I/O
  • 【补题】The 2021 ICPC Asia Nanjing Regional Contest Problem J. Xingqiu’s Joke
  • [Java][Leetcode middle] 6. Z 字形变换
  • TCP与UDP协议全面对比:从原理到应用场景深度解析
  • ROS2 camera_calibration 双目相机标定指令
  • 监控易一体化运维:网络拓扑管理,网络管理高效之道
  • 异常数据的检测