paicoding
1.0.0
一个基于 Spring Boot、MyBatis-Plus、MySQL、Redis、ElasticSearch、MongoDB、Docker、RabbitMQ 等技术栈实现的社区系统,采用主流的互联网技术架构、全新的UI设计、支持一键源码部署,拥有完整的文章&教程发布/搜索/评论/统计流程等,代码完全开源,没有任何二次封装,是一个非常适合二次开发/实战的现代化社区项目? 。
这个版本对技术派进行了二次开发,将用户端的前端 UI 使用 Vue3 重写,并且将后端升级到 Spring Boot 3 版本,喜欢 Vue3 或者 Spring Boot 3 版本的球友可以看看这个分支。
paicoding
├── paicoding-api -- 定义一些通用的枚举、实体类,定义 DODTOVO 等
├── paicoding-core -- 核心工具/组件相关模块,如工具包 util, 通用的组件都放在这个模块(以包路径对模块功能进行拆分,如搜索、缓存、推荐等)
├── paicoding-service -- 服务模块,业务相关的主要逻辑,DB 的操作都在这里
├── paicoding-ui -- HTML 前端资源(包括 JavaScript、CSS、Thymeleaf 等)
├── paicoding-web -- Web模块、HTTP入口、项目启动入口,包括权限身份校验、全局异常处理等
资源配置都放在 paicoding-web
模块的资源路径下,通过maven的env进行环境选择切换
当前提供了四种开发环境
环境切换命令
# 如切换生产环境
mvn clean install -DskipTests=true -Pprod
前端工程结构说明
后端技术栈
技术 | 说明 | 官网 |
---|---|---|
Spring & SpringMVC | Java全栈应用程序框架和WEB容器实现 | https://spring.io/ |
SpringBoot | Spring应用简化集成开发框架 | https://spring.io/projects/spring-boot |
mybatis | 数据库orm框架 | https://mybatis.org |
mybatis-plus | 数据库orm框架 | https://baomidou.com/ |
mybatis PageHelper | 数据库翻页插件 | https://github.com/pagehelper/Mybatis-PageHelper |
elasticsearch | 近实时文本搜索 | https://www.elastic.co/cn/elasticsearch/service |
redis | 内存数据存储 | https://redis.io |
rabbitmq | 消息队列 | https://www.rabbitmq.com |
mongodb | NoSql数据库 | https://www.mongodb.com/ |
nginx | 服务器 | https://nginx.org |
docker | 应用容器引擎 | https://www.docker.com |
hikariCP | 数据库连接 | https://github.com/brettwooldridge/HikariCP |
oss | 对象存储 | https://help.aliyun.com/document_detail/31883.html |
https | 证书 | https://letsencrypt.org/ |
jwt | jwt登录 | https://jwt.io |
lombok | Java语言增强库 | https://projectlombok.org |
guava | google开源的java工具集 | https://github.com/google/guava |
thymeleaf | html5模板引擎 | https://www.thymeleaf.org |
swagger | API文档生成工具 | https://swagger.io |
hibernate-validator | 验证框架 | hibernate.org/validator/ |
quick-media | 多媒体处理 | https://github.com/liuyueyi/quick-media |
liquibase | 数据库版本管理 | https://www.liquibase.com |
jackson | json/xml处理 | https://www.jackson.com |
ip2region | ip地址 | https://github.com/zoujingli/ip2region |
websocket | 长连接 | https://docs.spring.io/spring/reference/web/websocket.html |
sensitive-word | 敏感词 | https://github.com/houbb/sensitive-word |
chatgpt | chatgpt | https://openai.com/blog/chatgpt |
讯飞星火 | 讯飞星火大模型 | https://www.xfyun.cn/doc/spark/Web.html |
技术派教程共 120+ 篇,从中整理出 20 篇,供大家免费学习。
工具 | 说明 | 官网 |
---|---|---|
IDEA | java开发工具 | https://www.jetbrains.com |
Webstorm | web开发工具 | https://www.jetbrains.com/webstorm |
Chrome | 浏览器 | https://www.google.com/intl/zh-CN/chrome |
ScreenToGif | gif录屏 | https://www.screentogif.com |
SniPaste | 截图 | https://www.snipaste.com |
PicPick | 图片处理工具 | https://picpick.app |
MarkText | markdown编辑器 | https://github.com/marktext/marktext |
curl | http终端请求 | https://curl.se |
Postman | API接口调试 | https://www.postman.com |
draw.io | 流程图、架构图绘制 | https://www.diagrams.net/ |
Axure | 原型图设计工具 | https://www.axure.com |
navicat | 数据库连接工具 | https://www.navicat.com |
DBeaver | 免费开源的数据库连接工具 | https://dbeaver.io |
iTerm2 | mac终端 | https://iterm2.com |
windows terminal | win终端 | https://learn.microsoft.com/en-us/windows/terminal/install |
SwitchHosts | host管理 | https://github.com/oldj/SwitchHosts/releases |
工具 | 版本 | 下载 |
---|---|---|
jdk | 1.8+ | https://www.oracle.com/java/technologies/downloads/#java8 |
maven | 3.4+ | https://maven.apache.org/ |
mysql | 5.7+/8.0+ | https://www.mysql.com/downloads/ |
redis | 5.0+ | https://redis.io/download/ |
elasticsearch | 8.0.0+ | https://www.elastic.co/cn/downloads/elasticsearch |
nginx | 1.10+ | https://nginx.org/en/download.html |
rabbitmq | 3.10.14+ | https://www.rabbitmq.com/news.html |
ali-oss | 3.15.1 | https://help.aliyun.com/document_detail/31946.html |
git | 2.34.1 | http://github.com/ |
docker | 4.10.0+ | https://docs.docker.com/desktop/ |
let's encrypt | https证书 | https://letsencrypt.org/ |
本地开发环境手把手教程
环境搭建 & 基于源码的部署教程 服务器启动教程
技术派收到了 Jetbrains 多份 Licenses(详情戳 这里 ),并已分配给项目 活跃开发者 ,非常感谢 Jetbrains 对开源社区的支持。
GitHub 上标星 13000+ 的开源知识库《 二哥的 Java 进阶之路 》第一版 PDF 终于来了!包括Java基础语法、数组&字符串、OOP、集合框架、Java IO、异常处理、Java 新特性、网络编程、NIO、并发编程、JVM等等,共计 32 万余字,可以说是通俗易懂、风趣幽默……详情戳:太赞了,GitHub 上标星 13000+ 的 Java 教程
微信搜 沉默王二 或扫描下方二维码关注二哥的原创公众号,回复 222 即可免费领取。
Apache License 2.0
Copyright (c) 2022-2024 技术派(楼仔、沉默王二、一灰、小超、小灰飞)