首页 > 其他分享 >在线小说|基于SpringBoot和Vue实现小说在线阅读网

在线小说|基于SpringBoot和Vue实现小说在线阅读网

时间:2023-12-09 11:32:21浏览次数:22  
标签:Vue return 在线 import Integer 小说 public RequestMapping


作者简介:Java、前端、Python开发多年,做过高程,项目经理,架构师

主要内容:Java项目开发、Python项目开发、大学数据和AI项目开发、单片机项目设计、面试技术整理、最新技术分享

收藏点赞不迷路  关注作者有好处

文末获得源码

 项目编号:BS-PT-119

一,环境介绍

语言环境:Java:  jdk1.8

数据库:Mysql: mysql5.7

应用服务器:Tomcat:  tomcat8.5.31

开发工具:IDEA或eclipse

开发技术:SpringBoot和Vue

二,项目简介

本系统分为用户端和管理端两个大模块,在用户端功能分为:个人中心、创作模块、阅读模块、首页展示模块,在管理端分为个人信息管理模块、账号管理模块、公告管理模块、小说推荐管理模块、小说分类管理模块。

个人中心:用户注册登录、修改个人信息及退出登录

阅读模块:阅读小说、收藏小说、评论小说、搜索小说

创作模块:分为小说管理和小说章节管理,小说管理包括:创建小说、修改信息和删除小说,小说章节管理包含:查看章节、新增章节、修改章节和删除章节。

首页展示模块:编辑推荐轮播图、新品排行榜等

个人信息管理模块:登录和退出管理端页面

账号管理模块:查询用户账号、封禁用户账号和解封用户账号

公告管理模块:新增公告、修改公告和删除公告

小说推荐管理模块:查询小说、推荐小说和取消推荐

小说分类管理模块:查看所有分类及其包含的小说数量、修改分类和删除分类。

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_02编辑

表3-1 用户功能描述

功能名称

功能描述

用户注册

用户注册账号,以便实现身份识别保存基本信息

用户登录

用户登录系统,获得更多操作权限

个人信息管理

查看个人信息,支持修改个人信息

退出登录

退出当前账号,缩小用户操作权限

收藏小说/书架管理

用户收藏的小说在我的书架中显示,用户也能在我的书架中取消收藏

搜索小说

用户可以按自己感兴趣的分类或按关键字进行小说搜索

阅读小说

用户可以在不登录的情况下阅读小说章节内容

评论小说

用户评论任何小说

发布小说

作者用户创作小说

小说管理

作者用户创作小说后,对小说进行管理,如:新增章节、修改小说信息、查看章节等。

用户管理

管理员在后台系统中可以查看所有的账号信息,并根据关键字搜索用户账号,还能对用户账号做封禁/解封操作

公告管理

管理员对首页公告进行操作

小说推荐管理

管理员查看所有小说信息,可根据小说名进行模糊查询。根据点击量或收藏量对小说进行推荐/取消推荐操作

小说分类管理

管理员对小说分类进行管理,分类下包含小说的分类无法进行删除操作

2  非功能需求

(1)性能需求:

用户在页面操作后,服务器需要3s内响应相关操作,运行时的资源消耗量主要消耗在图片读取方面,其它文本类数据所占消耗量较小。

  1. 可靠性需求:

用户操作系统时,系统的失效频率要尽可能控制在0,对于各种可能造成失效的因素进行排查,并划分程度,根据程度的不同提前做异常处理,增强系统的易恢复性。

投入使用前,对系统各功能进行测试,尽可能预测可能发生的故障并解决,减少故障发生概率。

  1. 易用性需求:

系统页面设计简约、布局合理,各操作提示应简单易懂、一目了然,面向用户的文档需详细介绍各操作功能,培训资料可略简单。

  1. 安全性需求:

用户登录注册的接口使用Spring Security进行加密,密码加密后才能存入数据库,相关操作请求根据用户权限判断是否放行。

  1. 运行环境约束:

本系统运行环境无特别要求,只需要以链接的方式通过浏览器发送请求即可访问服务器中的数据。

  1. 外部接口:

输入的数据格式部分有格式限制,相关限制都在提交数据之前提示,与系统的数据交互频率需尽可能保持为实时。

三,系统展示

注册登录

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_03

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_04编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_05

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_06编辑

系统首页

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_07

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_08编辑

最新发布章节

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_09

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_10编辑

分类展示:可以按收藏量和点击量排序

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_11

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_12编辑

分类查看:可以在线阅读以及评论,收藏到自己的书架

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_13

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_14编辑

在线阅读:可以调换背景

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_15

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_16编辑

全部分类展示查看

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_17

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_18编辑

个人中心

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_19

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_20编辑

如是注册为作者身份:可以在线创作

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_21

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_22编辑

新建小说

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_23

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_24编辑

发布章节内容

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_25

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_26编辑

章节管理

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_27

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_28编辑

后台管理员管理功能

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_29

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_30编辑

用户管理

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_31

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_32编辑

小说管理

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_33

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_34编辑

推荐管理

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_35

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_36编辑

四,核心代码展示

package com.cwx.novel.controller;


import com.cwx.novel.dto.OneChapterDto;
import com.cwx.novel.entity.Chapter;
import com.cwx.novel.entity.Novel;
import com.cwx.novel.service.impl.ChapterServiceImpl;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author znz
 * @since 2022-10-13
 */
@RestController
@RequestMapping("/public/chapter")
public class ChapterController {

    @Autowired
    private ChapterServiceImpl chapterService;



    @ApiOperation("查询该小说已有的某一章节")
    @RequestMapping("/loadOneChapterByNovelId")
    public OneChapterDto  loadOneChapterByNovelId(Integer chapterNovelId, Integer novelId) {
        return chapterService.loadOneChapterByNovelId(chapterNovelId, novelId);
    }


    @ApiOperation("查询该小说已有的最新章节")
    @RequestMapping("/loadNewChapterByNovelId")
    public Chapter loadNewChapterByNovelId(Integer novelId) {
        return chapterService.loadNewChapterByNovelId(novelId);
    }

    @ApiOperation("添加小说章节")
    @RequestMapping("/addChapter")
    public void addChapter(Chapter chapter) {
        chapterService.addChapter(chapter);
    }

    @ApiOperation("查询该小说所有章节")
    @RequestMapping("/loadAllChapterByNovelId")
    public List<Chapter> loadAllChapterByNovelId(Integer novelId) {
        return chapterService.loadAllChapterByNovelId(novelId);
    }

    @ApiOperation("更新小说章节")
    @RequestMapping("/updateChapter")
    public Integer updateChapter(Chapter chapter) {
        return chapterService.updateChapter(chapter);
    }

    @ApiOperation("删除小说章节")
    @RequestMapping("/deleteChapter")
    public Integer deleteChapter(Integer chapterId, Integer novelId) {
        return chapterService.deleteChapter(chapterId, novelId);
    }

    @ApiOperation("查询有着最新章节的小说")
    @RequestMapping("/loadNewNovelByCreateDate")
    public List<OneChapterDto> loadNewNovelByCreateDate() {
        return chapterService.loadNewNovelByCreateDate();
    }
}

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_37

package com.cwx.novel.controller;


import com.cwx.novel.entity.Notice;
import com.cwx.novel.service.NoticeService;
import com.cwx.novel.service.impl.NoticeServiceImpl;
import com.cwx.novel.service.impl.NovelServiceImpl;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author znz
 * @since 2022-10-14
 */
@RestController
public class NoticeController {

    @Autowired
    private NoticeServiceImpl noticeService;

    @ApiOperation("读取所有公告")
    @RequestMapping("/public/notice/loadAllNotice")
    public List<Notice> loadAllNotice() {
        return noticeService.loadAllNotice();
    }

    @ApiOperation("管理员添加公告")
    @RequestMapping("/admin/notice/insertNotice")
    public Integer insertNotice(Notice notice) {
        return noticeService.insertNotice(notice);
    }

    @ApiOperation("管理员修改公告")
    @RequestMapping("/admin/notice/updateNotice")
    public Integer updateNotice(Notice notice) {
        return noticeService.updateNotice(notice);
    }


    @ApiOperation("管理员删除公告")
    @RequestMapping("/admin/notice/deleteNoticeById")
    public Integer deleteNoticeById(Integer id) {
        return noticeService.deleteNoticeById(id);
    }




}

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_38

package com.cwx.novel.controller;


import com.cwx.novel.dto.UserDto;
import com.cwx.novel.entity.User;
import com.cwx.novel.service.impl.UserServiceImpl;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author znz
 * @since 2022-10-11
 */
@Api("用户操作")
@RestController
@RequestMapping("/public/user")
public class UserController {

    @Autowired
    private UserServiceImpl userService;

    @PostMapping("/updateUserPwd")
    public Integer updateUserPwd(String pwd1, Integer id){
        return userService.updateUserPwd(pwd1, id);
    }

    @PostMapping("/loadUserAllById")
    public UserDto loadUserAllById(Integer id){
        return userService.loadUserAllById(id);
    }

    @PostMapping("/updateUser")
    public Integer updateUser(UserDto user){
        return userService.updateUser(user);
    }

    @PostMapping("/reloadUser")
    public Integer reloadUser(Integer id){
        return userService.reloadUser(id);
    }

    @PostMapping("/loadUserAllByNovelId")
    public UserDto loadUserAllByNovelId(Integer novelId){
        return userService.loadUserAllByNovelId(novelId);
    }

    @PostMapping("/followIt")
    public Integer followIt(Integer uid, Integer fid){
        return userService.followIt(uid, fid);
    }
    @PostMapping("/unFollowIt")
    public Integer unFollowIt(Integer uid, Integer fid){
        return userService.unFollowIt(uid, fid);
    }
    @PostMapping("/IsFollowIt")
    public Integer IsFollowIt(Integer uid, Integer fid){
        return userService.IsFollowIt(uid, fid);
    }

    @PostMapping("/loadFollowUserByUid")
    public List<UserDto> loadFollowUserByUid(Integer uid){
        return userService.loadFollowUserByUid(uid);
    }

}

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_39

五,相关作品展示

基于Java开发、Python开发、PHP开发、C#开发等相关语言开发的实战项目

基于Nodejs、Vue等前端技术开发的前端实战项目

基于微信小程序和安卓APP应用开发的相关作品

基于51单片机等嵌入式物联网开发应用

基于各类算法实现的AI智能应用

基于大数据实现的各类数据管理和推荐系统

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_40

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_41编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_42

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_43编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_44

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_45编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_46

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_47编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_48

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_49编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_50

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_51编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_在线阅读_52

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说平台_53编辑

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_54

在线小说|基于SpringBoot和Vue实现小说在线阅读网_小说在线_55编辑



标签:Vue,return,在线,import,Integer,小说,public,RequestMapping
From: https://blog.51cto.com/u_16147814/8746754

相关文章

  • vue 格式化JSON
    第一步:安装npmibin-code-editor-S#oryarnaddbin-code-editor第二步:在main.js中引入//引入vueimportVuefrom'vue';//引入bin-code-editor相关插件和样式importCodeEditorfrom'bin-code-editor';import'bin-code-editor/lib/styles/index.css�......
  • 实现多账号同时在线,试试Line多开
    实现多账号同时在线——Line多开的解决方案导语:在当今社交媒体时代,人们经常需要同时管理多个社交账号。然而,许多应用程序并不支持同时登录多个账号,这给用户带来了一些困扰。幸运的是,有一些工具可以帮助我们实现多账号同时在线的需求,例如Line多开。本文将介绍Line多开的解决方案,为......
  • Vue 3中的路由跳转及在新标签页中打开链接
    前言在Vue3中,VueRouter是一个常用的路由管理库,它提供了一种简单而强大的方式来实现路由跳转和导航。本文将介绍如何在Vue3中设置路由跳转,并且重点讨论如何在新标签页中打开链接。步骤一:安装VueRouter首先,我们需要安装VueRouter。在命令行中执行以下命令:npminstallvue-ro......
  • 失物招领平台|基于Springboot和Vue实现失物招领系统
    作者简介:Java、前端、Python开发多年,做过高程,项目经理,架构师主要内容:Java项目开发、Python项目开发、大学数据和AI项目开发、单片机项目设计、面试技术整理、最新技术分享收藏点赞不迷路 关注作者有好处文末获得源码 项目编号:BS-XX-194一,环境介绍语言环境:Java: jdk1.8数据库:My......
  • vue实现大文件分片上传
    这里使用了elementui的文件上传插件<divclass="inputTitle">人员资料</div><divclass="uploadBox"><divclass="picture"><imgsrc="@/assets/images/zip-before.png">......
  • Vue2 的 diff 算法详解
    所谓diff算法,就是通过比对新旧两个虚拟节点不一样的地方,针对那些不一样的地方进行新增或更新或删除操作。接下来详细介绍节点更新的过程。首先进行静态节点处理,判断新旧两个虚拟节点是否是静态节点,如果是,就不需要进行更新操作,可以直接跳过更新比对的过程。再更新处理新老节点......
  • Vue3 diff算法详解
    Diff更新算法由于目前Vue3对于性能的优化做了很多的处理,所以其在更新时并不会对所有的节点都进行diff更新。目前会进行diff更新的有以下两种情况:v-for容器节点自写的render()函数还有一种特殊情况会进行无diff的按序更新,这种更新是全替换模式,非常耗时:无key值的v-for语句,......
  • vue+spirngboot前后端数据加解密(基于AES+RSA实现)
    案例说明案例只针对post请求这里使用’Content-Type’:‘application/x-www-form-urlencoded;charset=UTF-8’;为键值对的形式(非json)AES加密数据,RAS加密AES的key实现思路前台首先请求非加密接口获取后台的公钥前台在请求前生成自己的公钥和私钥,以及AES对称加密的key使用前台......
  • vue实现全局消息提醒功能(vue-extend)
    1.需求背景(1)在一般的管理系统或者H5应用中,需要交互反馈提醒。这种交互反馈,往往需要在多个组件中使用到,那么是否可以将其抽离出来,封装一个组件呢?答案是肯定的,可以根据日常的业务,对消息提醒功能进行封装,那么问题来了,如何实现一次注册,多次使用呢,关键时刻,vue.extendAPI就派上用场......
  • Vue之this.$options.data()和this.$data
    Vue之this.$options.data()和this.$data:https://blog.csdn.net/weixin_44090040/article/details/129875428?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_utm_term~default-1-129875428-blog-132714630.235^v39^pc_relevant_3m_sort_dl_base2&spm......