文末获取源码

开发语言:Java

框架:springboot

JDK版本:JDK1.8

服务器:tomcat7

数据库:mysql 5.7/8.0

数据库工具:Navicat11

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.3.9

浏览器:谷歌浏览器

前言介绍

本系统主要包括管理员和用户两个角色组成,主要包括以下功能:

(1)前台:首页、漫画资源、排行榜、交流论坛、公告信息、个人中心、后台管理 。

(2)管理员:首页、个人中心、用户管理、漫画分类管理、漫画资源管理、分类管理、排行榜管理、交流论坛、系统管理。

(3)用户:首页、个人中心、漫画资源管理。

功能分析

考虑到实际生活中在漫画网站方面的需要以及对该系统认真的分析,将系统权限按管理员和用户这两类涉及用户划分。

(a) 管理员;管理员使用本系统涉到的功能主要有:首页、个人中心、用户管理、漫画分类管理、漫画投稿管理、分类管理、排行榜管理、交流论坛、系统管理等功能。管理员用例图如图

(b)用户;用户使用本系统涉到的功能主要有:首页、个人中心、,漫画投稿管理等功能。用户用例图如图

网站整体功能

系统功能模块

漫画网站,在系统首页可以查看首页、漫画投稿、排行榜、交流论坛、公告信息、个人中心、后台管理等内容,并进行详细操作,如图

用户注册

在用户注册页面通过填写用户账号、密码、确认密码、用户姓名、联系方式等信息进行注册操作,如图

漫画资源

在漫画资源页面可以查看漫画名称、投稿编号、漫画分类、漫画标签、投稿日期、用户账号、用户姓名、点击次数等内容,还可以根据投稿稿件点击下载,对我的收藏进行详细操作如图

个人中心

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

管理员功能模块

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

管理员登录系统后,可以对首页、个人中心、用户管理、漫画分类管理、漫画投稿管理、分类管理、排行榜管理、交流论坛、系统管理等进行相应的操作管理,如图

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

漫画分类管理

在漫画分类管理页面可以对索引、漫画分类、漫画标签等内容进行详情,修改和删除等操作,如图

漫画投稿管理

在漫画投稿管理页面可以对索引、投稿编号、漫画名称、漫画分类、漫画标签、漫画图片、投稿稿件、投稿日期、用户账号、用户姓名、审核回复、审核状态、审核等内容进行详情,修改,查看评论和删除等操作,如图

分类管理

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

排行榜管理

在排行榜管理页面可以对索引、标题、漫画名称、漫画分类、漫画标签、分类、排行、封面、更新时间等内容进行详情,修改和删除等操作,如图

交流论坛

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

系统管理

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

用户功能模块

用户登录进入漫画网站可以对首页、个人中心、漫画投稿管理等进行相应操作,如图

个人中心

在个人信息页面通过填写用户账号、用户姓名、性别、头像等内容对个人信息进行修改操作,如图

漫画投稿管理

在漫画投稿管理页面可以对索引、投稿编号、漫画名称、漫画分类、漫画标签、漫画图片、投稿稿件、投稿日期、用户账号、用户姓名、审核回复、审核状态等内容进行查看评论、详情修改和删除等操作,如图

部分核心代码

/*** 登录相关*/
@RequestMapping("config")
@RestController
public class ConfigController{@Autowiredprivate ConfigService configService;/*** 列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,ConfigEntity config){EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();PageUtils page = configService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, config), params), params));return R.ok().put("data", page);}/*** 列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,ConfigEntity config){EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();PageUtils page = configService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, config), params), params));return R.ok().put("data", page);}/*** 信息*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){ConfigEntity config = configService.selectById(id);return R.ok().put("data", config);}/*** 详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") String id){ConfigEntity config = configService.selectById(id);return R.ok().put("data", config);}/*** 根据name获取信息*/@RequestMapping("/info")public R infoByName(@RequestParam String name){ConfigEntity config = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "faceFile"));return R.ok().put("data", config);}/*** 保存*/@PostMapping("/save")public R save(@RequestBody ConfigEntity config){
//      ValidatorUtils.validateEntity(config);configService.insert(config);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody ConfigEntity config){
//        ValidatorUtils.validateEntity(config);configService.updateById(config);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){configService.deleteBatchIds(Arrays.asList(ids));return R.ok();}
}/*** 漫画资源* 后端接口* @author * @email * @date 2022-04-01 17:16:21*/
@RestController
@RequestMapping("/manhuaziyuan")
public class ManhuaziyuanController {@Autowiredprivate ManhuaziyuanService manhuaziyuanService;@Autowiredprivate StoreupService storeupService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,ManhuaziyuanEntity manhuaziyuan,HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {manhuaziyuan.setYonghuzhanghao((String)request.getSession().getAttribute("username"));}EntityWrapper<ManhuaziyuanEntity> ew = new EntityWrapper<ManhuaziyuanEntity>();PageUtils page = manhuaziyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, manhuaziyuan), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,ManhuaziyuanEntity manhuaziyuan, HttpServletRequest request){EntityWrapper<ManhuaziyuanEntity> ew = new EntityWrapper<ManhuaziyuanEntity>();PageUtils page = manhuaziyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, manhuaziyuan), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( ManhuaziyuanEntity manhuaziyuan){EntityWrapper<ManhuaziyuanEntity> ew = new EntityWrapper<ManhuaziyuanEntity>();ew.allEq(MPUtil.allEQMapPre( manhuaziyuan, "manhuaziyuan")); return R.ok().put("data", manhuaziyuanService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(ManhuaziyuanEntity manhuaziyuan){EntityWrapper< ManhuaziyuanEntity> ew = new EntityWrapper< ManhuaziyuanEntity>();ew.allEq(MPUtil.allEQMapPre( manhuaziyuan, "manhuaziyuan")); ManhuaziyuanView manhuaziyuanView =  manhuaziyuanService.selectView(ew);return R.ok("查询漫画资源成功").put("data", manhuaziyuanView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){ManhuaziyuanEntity manhuaziyuan = manhuaziyuanService.selectById(id);manhuaziyuan.setClicknum(manhuaziyuan.getClicknum()+1);manhuaziyuan.setClicktime(new Date());manhuaziyuanService.updateById(manhuaziyuan);return R.ok().put("data", manhuaziyuan);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){ManhuaziyuanEntity manhuaziyuan = manhuaziyuanService.selectById(id);manhuaziyuan.setClicknum(manhuaziyuan.getClicknum()+1);manhuaziyuan.setClicktime(new Date());manhuaziyuanService.updateById(manhuaziyuan);return R.ok().put("data", manhuaziyuan);}/*** 赞或踩*/@RequestMapping("/thumbsup/{id}")public R vote(@PathVariable("id") String id,String type){ManhuaziyuanEntity manhuaziyuan = manhuaziyuanService.selectById(id);if(type.equals("1")) {manhuaziyuan.setThumbsupnum(manhuaziyuan.getThumbsupnum()+1);} else {manhuaziyuan.setCrazilynum(manhuaziyuan.getCrazilynum()+1);}manhuaziyuanService.updateById(manhuaziyuan);return R.ok("投票成功");}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ManhuaziyuanEntity manhuaziyuan, HttpServletRequest request){manhuaziyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(manhuaziyuan);manhuaziyuanService.insert(manhuaziyuan);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody ManhuaziyuanEntity manhuaziyuan, HttpServletRequest request){manhuaziyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(manhuaziyuan);manhuaziyuanService.insert(manhuaziyuan);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody ManhuaziyuanEntity manhuaziyuan, HttpServletRequest request){//ValidatorUtils.validateEntity(manhuaziyuan);manhuaziyuanService.updateById(manhuaziyuan);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){manhuaziyuanService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<ManhuaziyuanEntity> wrapper = new EntityWrapper<ManhuaziyuanEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {wrapper.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));}int count = manhuaziyuanService.selectCount(wrapper);return R.ok().put("count", count);}/*** 前端智能排序*/@IgnoreAuth@RequestMapping("/autoSort")public R autoSort(@RequestParam Map<String, Object> params,ManhuaziyuanEntity manhuaziyuan, HttpServletRequest request,String pre){EntityWrapper<ManhuaziyuanEntity> ew = new EntityWrapper<ManhuaziyuanEntity>();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", "clicknum");params.put("order", "desc");PageUtils page = manhuaziyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, manhuaziyuan), params), params));return R.ok().put("data", page);}}

最后

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

小编已加密:aHR0cHM6Ly9kb2NzLnFxLmNvbS9kb2MvRFVrVm9aSGxQZUVsTlkwUnc==出于安全原因,我们把网站通过base64编码了,大家可以通过base64解码把网址获取下来。

SpringBoot+Vue项目漫画网站相关推荐

  1. SpringBoot+Vue项目社团网站

    文末获取源码 开发语言:Java 框架:springboot+vue Node:node.js JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Nav ...

  2. Springboot+vue项目音乐网站与分享平台

    文末获取源码 开发语言:Java 开发工具:IDEA /Eclipse 数据库:MYSQL5.7 应用服务:Tomcat7/Tomcat8 使用框架:springboot+vue JDK版本:jdk1 ...

  3. Springboot毕设项目漫画网站j846u(java+VUE+Mybatis+Maven+Mysql)

    项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  4. SpringBoot+Vue项目漫画之家系统

    文末获取源码 开发语言:Java 开发工具:IDEA /Eclipse 数据库:MYSQL5.7/8.0 应用服务:Tomcat7/Tomcat8 是否Maven项目:是 后端框架:SpringBoo ...

  5. springboot毕设项目美食网站设计与实现62e76(java+VUE+Mybatis+Maven+Mysql)

    springboot毕设项目美食网站设计与实现62e76(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + H ...

  6. springboot毕设项目影评网站系统4i684(java+VUE+Mybatis+Maven+Mysql)

    springboot毕设项目影评网站系统4i684(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBui ...

  7. Springboot毕设项目壁纸网站32zp4(java+VUE+Mybatis+Maven+Mysql)

    Springboot毕设项目壁纸网站32zp4(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuild ...

  8. Springboot毕设项目儿童用品网站58e7h(java+VUE+Mybatis+Maven+Mysql)

    Springboot毕设项目儿童用品网站58e7h(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBui ...

  9. JAVA毕设项目漫画网站系统(java+VUE+Mybatis+Maven+Mysql)

    JAVA毕设项目漫画网站系统(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webst ...

最新文章

  1. 面试季:如何在面试中介绍自己的项目经验
  2. 转载:sqlmap的应用实战
  3. STM32开发 -- YModem详解
  4. 面试再也不怕问到HashMap(一)
  5. 福建信息技术学院计算机系男生宿舍怎么样,广西职业技术学院宿舍怎么样
  6. 如何使用Java 8流快速替换列表中的元素
  7. ubuntu dhcp ping 不通 自己_??2、DHCP安装和配置
  8. leetcode 491. 递增子序列 思考分析
  9. 【学习笔记】单例模式(枚举、校验锁、volatile、反射破坏)
  10. kali2020识别不到网卡_WIN10环境下台式机找不到RealTek HD管理器解决耳塞式耳机外放问题...
  11. Bootstrap3 折叠插件的事件
  12. C# 整数转二进制字符串
  13. 转:如何把 SQL Server 的自增标志列清零
  14. python pyaudo播放wav声音文件
  15. 快冲!淘宝无货源副业,傻瓜式操作,日赚300-500元!!
  16. javascript scope chain
  17. 如何在家里制作服务器,在家如何架设服务器?
  18. java计算上个工作日方法
  19. ThreadPoolExecutor线程池的使用
  20. 呃呃,阿里p6学习路线啊

热门文章

  1. 热敏电阻-温度换算算法(分段线性拟合法)
  2. 【话题】致敬伟大的科学家史蒂芬·霍金,他留下的预言能实现吗?
  3. Kubernetes 进阶训练营 Pod基础
  4. SSH远程访问开发板
  5. 解决报错【internal/modules/cjs/loader.js:905 throw err;】
  6. 2021-2027全球与中国EMI/EMC滤波器市场现状及未来发展趋势
  7. 程序员代码表白 爱你三千遍
  8. BFC、IFC、GFC 和 FFC
  9. PS流包格式之PS/SYS/PSM/PES头
  10. 从mpeg ts文件中提取I帧(3):pes包的解析