大家好,今天小编来为大家解答以下的问题,关于哪里有不错门户网站源码分享,来个不错的网址这个很多人还不知道,现在让我们一起来看看吧!
1.推荐一款前后端分离学习型小说项目
注:文章末尾有项目地址链接
novel
1.项目简介
novel是一套基于时下最新Java技术栈SpringBoot3+Vue3开发的前后端分离学习型小说项目,配备保姆级教程手把手教你从零开始开发上线一套生产级别的Java系统,由小说门户系统、作家后台管理系统、平台后台管理系统等多个子系统构成。包括小说推荐、作品检索、小说排行榜、小说阅读、小说评论、会员中心、作家专区、充值订阅、新闻发布等功能。
2.开发环境
MySQL8.0Redis7.0Elasticsearch8.2.0(可选)RabbitMQ3.10.2(可选)XXL-JOB2.3.1(可选)JDK17Maven3.8IntelliJIDEA2021.3(可选)Node16.14
注:Elasticsearch、RabbitMQ和XXL-JOB默认关闭,可通过application.yml配置文件中相应的enable配置属性开启。
3.后端技术选型
技术
版本
说明
官网
SpringBoot
3.0.0
容器+MVC框架
https://spring.io/projects/spring-boot
MyBatis
3.5.9
ORM框架
http://www.mybatis.org
MyBatis-Plus
3.5.3
MyBatis增强工具
https://baomidou.com/
JJWT
0.11.5
JWT登录支持
https://github.com/jwtk/jjwt
Lombok
1.18.24
简化对象封装工具
https://github.com/projectlombok/lombok
Caffeine
3.1.0
本地缓存支持
https://github.com/ben-manes/caffeine
Redis
7.0
分布式缓存支持
https://redis.io
Redisson
3.17.4
分布式锁实现
https://github.com/redisson/redisson
MySQL
8.0
数据库服务
https://www.mysql.com
ShardingSphere-JDBC
5.1.1
数据库分库分表支持
https://shardingsphere.apache.org
Elasticsearch
8.2.0
搜索引擎服务
https://www.elastic.co
RabbitMQ
3.10.2
开源消息中间件
https://www.rabbitmq.com
XXL-JOB
2.3.1
分布式任务调度平台
https://www.xuxueli.com/xxl-job
Sentinel
1.8.4
流量控制组件
https://github.com/alibaba/Sentinel
Springdoc-openapi
2.0.0
Swagger3接口文档自动生成
https://github.com/springdoc/springdoc-openapi
SpringBootAdmin
3.0.0-M1
应用管理和监控
https://github.com/codecentric/spring-boot-admin
Undertow
2.2.17.Final
Java开发的高性能Web服务器
https://undertow.io
Docker
–
应用容器引擎
https://www.docker.com/
Jenkins
–
自动化部署工具
https://github.com/jenkinsci/jenkins
Sonarqube
–
代码质量控制
https://www.sonarqube.org/
4.编码规范
规范方式:严格遵守阿里编码规约。命名统一:简介最大程度上达到了见名知意。分包明确:层级分明可快速定位到代码位置。注释完整:描述性高大量减少了开发人员的代码阅读工作量。工具规范:使用统一jar包避免出现内容冲突。代码整洁:可读性、维护性高。依赖版本:所有依赖均使用当前最新可用版本以便新技术学习。
5.包结构
io\n+-github\n+-xxyopen\n+-novel\n+-NovelApplication.java–项目启动类\n|\n+-core–项目核心模块,包括各种工具、配置和常量等\n|+-common–业务无关的通用模块\n||+-exception–通用异常处理\n||+-constant–通用常量\n||+-req–通用请求数据格式封装,例如分页请求数据\n||+-resp–接口响应工具及响应数据格式封装\n||+-util–通用工具\n||\n|+-annotation–自定义注解类\n|+-aspect–SpringAOP切面\n|+-auth–用户认证授权相关\n|+-config–业务相关配置\n|+-constant–业务相关常量\n|+-filter–过滤器\n|+-interceptor–拦截器\n|+-json–JSON相关的包,包括序列化器和反序列化器\n|+-task–定时任务\n|+-util–业务相关工具\n|+-wrapper–装饰器\n|\n+-dto–数据传输对象,包括对各种Http请求和响应数据的封装\n|+-req–Http请求数据封装\n|+-resp–Http响应数据封装\n|\n+-dao–数据访问层,与底层MySQL进行数据交互\n+-manager–通用业务处理层,对第三方平台封装、对Service层通用能力的下沉以及对多个DAO的组合复用\n+-service–相对具体的业务逻辑服务层\n+-controller–主要是处理各种Http请求,各类基本参数校验,或者不复用的业务简单处理,返回JSON数据等\n|+-front–小说门户相关接口\n|+-author–作家管理后台相关接口\n|+-admin–平台管理后台相关接口\n|+-app–app接口\n|+-applet–小程序接口\n|+-open–开放接口,供第三方调用
6.项目运行截图
首页分类索引页搜索页排行榜详情页阅读页用户中心充值作家专区购买接口文档
7.安装步骤
此安装步骤的前提是需要保证上一节的开发环境可用。
下载后端源码
gitclonehttps://gitee.com/novel_dev_team/novel.git
数据库文件导入新建数据库(建议novel)解压后端源码doc/sql/novel.sql.zip压缩包,得到数据库结构文件novel_struc.sql和数据库小说数据文件novel_data.sql导入novel_struct.sql数据库结构文件导入novel_data.sql数据库小说数据文件novel后端服务安装修改src/resources/application.yml配置文件中的数据源配置修改src/resources/application.yml配置文件中的redis连接配置根据前后端的实际部署情况,修改application.yml中的跨域配置(默认情况可忽略此步骤)项目根目录下运行如下命令来启动后端服务(有安装IDE的可以导入源码到IDE中运行)接口文档访问地址:http://server:port/swagger-ui/index.html下载前端前台门户系统源码novel-front-web前端前台门户系统安装根据前后端的实际部署情况,修改.env.development中的VUE_APP_BASE_API_URL属性(默认情况可忽略此步骤)yarn安装项目根目录下运行如下命令来安装项目依赖项目根目录下运行如下命令启动浏览器通过http://localhost:1024来访问
项目后端地址:https://gitee.com/novel_dev_team/novel
好了,文章到此结束,希望可以帮助到大家。
