Java听潮阁(SpringCloud项目)

一、简介

本网站是不凉域网络技术工作室的后台管理网站和旗下的网站(目前只有Java听潮阁),后台管理网站具有统计旗下所有网站的数据功能,并且能直接对旗下所有网站进行管理。

Java听潮阁网站是一个Java书籍网站,名字拟取自《雪中悍刀行》的听潮亭,剑神李淳罡(天不生我李淳罡,剑道万古如长夜)在听潮亭待了二十年,出来游历后实力直上陆地天人境,希望所有Java技术人员历经乏味的学习后都能有所突破,该项目主要具有微信支付、预览pdf电子书籍和下载pdf书籍的功能,祝各位码运昌隆!

二、项目搭建

1、MySQL数据库表

在sql文件夹中,包含有blywl.sql的数据库脚本,数据编码为utf-8,可自行导入navicat中。

一共有9个数据库表,每个表中都有一些初始数据,有需要的可自定义。

其中book_info中的书籍url数据是将电子书pdf文件数据上传到minio中,获取其文件访问路径,java电子书籍可以百度查找或者爬取,这里附带了几本pdf电子书可以测试用,还附带了使用python3.6截取pdf的脚本文件。

2、后端项目

在每个模块的yaml配置文件中需要修改自己的nacos配置中心地址。

导入nacos配置文件,其中的各个属性参数可以自行修改。

3、前端项目

两个都是Vue2项目,一个是后台管理的ui,一个是Java听潮阁的ui

三、后台管理系统

后台管理系统只有管理员可以登录,不仅能统计各个子网站数据,还能对各个子网站数据进行管理、处理和统计。

1、后端技术架构

(1)依赖版本
jdk MySQL spring-boot spring-cloud-alibaba spring-cloud-alibaba-dependencies nacos-client java-jwt
1.8 8.0 2.6.13 2021.0.5.0 2.2.0.RELEASE 1.4.1 3.18.2
hutool-all mybatis-plus spring-cloud-starter-openfeign spring-cloud-loadbalancer minio
5.7.20 3.4.2 3.1.5 3.1.5 7.0.2
org.apache.poi wechatpay-apache-httpclient
4.1.2 0.3.0
(2)功能架构

后台管理系统的功能架构:

2、前端开发

(1)依赖版本
node npm vue element-ui vue-router axios
16.13.2 8.1.2 ^2.6.14 ^2.15.13 ^3.5.1 ^1.4.0
(2)项目展示

四、Java听潮阁

1、后端技术架构

(1) 依赖版本
jdk MySQL spring-boot spring-cloud-alibaba spring-cloud-alibaba-dependencies nacos-client java-jwt
1.8 8.0 2.6.13 2021.0.5.0 2.2.0.RELEASE 1.4.1 3.18.2
hutool-all mybatis-plus spring-cloud-starter-openfeign spring-cloud-loadbalancer minio
5.7.20 3.4.2 3.1.5 3.1.5 7.0.2
spring-cloud-starter-gateway wechatpay-apache-httpclient
3.1.6 0.3.0
(2) 功能架构

Java听潮阁系统的功能架构:

(3) 技术栈架构

SpringBoot+MySQL+MyBatis-plus+MD5加密+JWT+Redis+Nacos+gateway+Feign+Sentinel+Minio+微信支付Native的apiV3+QQ邮箱发送验证码

2、前端开发

(1)依赖版本

node npm vue element-ui vue-router axios
16.13.2 8.1.2 ^2.6.14 ^2.15.13 ^3.5.1 ^1.4.0
core-js vue-pdf vue-qriously
^3.8.3 ^4.2.0 ^1.1.1

(2)项目展示

1.PC端
2.App端

五、项目部署

打包成jar包后使用linux系统的docker容器部署项目,详细可见:Docker部署jar包的方式及详解_docker build jar-CSDN博客

1、打包jar注意点

由于此项目分为多个模块,而且各模块之间有一定的关联,打包成jar包时要注意,必须先clean清除一遍缓存,再把共有模块common打包package后引入各个项目中,然后install父模块,再对子模块package,否则会出现 " 程序包XXX.XXX不存在 " 的情况。

当然,如果所有步骤都没问题,编译正常,就是运行和打包时识别不到某个包,这就是IDEA本身的问题了(特别是2023以前的版本常有),需要退出手动删除.idea文件夹后重新打开。

打包好后要先cmd运行一遍再去服务器部署,因为已经使用了nacos远程配置,可能会出现cmd编码和nacos远程配置文件的编码冲突,因此,cmd运行时要统一编码:

复制代码
java -jar -Dfile.encoding=utf-8 ***.jar

2、docker部署jar注意点

其他的项目部署查看 Docker部署jar包的方式及详解_docker build jar-CSDN博客 即可,但是需要注意的是微信支付模块,它需要引入pem密钥文件,所以它的Dockerfile文件得多加一行引入密钥文件。

拒绝白嫖,需要的可以+V: buliangshuai01033

相关推荐
AI人工智能+电脑小能手6 分钟前
大白话说Java设计模式-46-责任链模式(业务实战篇)
java·设计模式·责任链模式·风控校验·servlet filter·spring interceptor·链式处理
jay神23 分钟前
【计算机毕业设计】基于SpringBoot的程序教学辅助系统
java·前端·vue.js·spring boot·后端·毕业设计·课程设计
2601_962066491 小时前
【Sql Server】Update中的From语句,以及常见更新操作方式
android·java·数据库
yaoxin5211232 小时前
507. Java 反射 - 在 BeanFactory 中实现依赖注入
java·开发语言
OPEN-F2 小时前
C++模板教程:变参模板、折叠表达式与SFINAE
java·开发语言·c++
2601_962072213 小时前
SpringMVC进阶(自定义拦截器以及异常处理)
java
2601_962073813 小时前
Spring全面详解(基础版)
java·后端·spring
谢亮_vipxieliang5 小时前
ValidX分组验证详解:不同场景使用不同验证规则
java·spring boot·后端·spring cloud·eclipse·hibernate
wuminyu5 小时前
深入剖析 Panama Off-heap 的性能损耗与开销
java·linux·c语言·jvm·c++
pnoker5 小时前
IoT DC3 AI 能力:Agentic Center 的设计与边界
java·人工智能·物联网·大模型·spring ai