b6bdc913ecbf107bfd2624ceedf85636ef10ee72
basic_template_not_login_back
开发基本模版——后端
basic_template_not_login_back
项目介绍
basic_template_not_login_back 是一个包含后端的基础开发模板,旨在为快速搭建Web应用提供完整的技术栈支持。项目后端基于Spring Boot 3 + MyBatis + PostgreSQL构建,集成了国密算法(SM2/SM3/SM4)加解密功能、动态数据源、Redis缓存等核心功能,可直接作为中小型Web项目的开发起点。
目录结构
basic_template_not_login_back
├── bin # 批处理脚本
│ └── package.bat # 打包脚本
├── src
│ ├── main
│ │ ├── java/com/gis/basic_template_not_login_back
│ │ │ ├── config # 配置类
│ │ │ │ ├── CryptoProperties.java # 加解密配置属性
│ │ │ │ ├── DataSource.java # 数据源注解
│ │ │ │ ├── DataSourceAspect.java # 数据源切面
│ │ │ │ ├── DataSourceConfig.java # 数据源配置
│ │ │ │ ├── DataSourceContextHolder.java # 数据源上下文
│ │ │ │ ├── DynamicDataSource.java # 动态数据源
│ │ │ │ └── RedisConfig.java # Redis配置
│ │ │ ├── controller # 控制器层
│ │ │ │ ├── BaseController.java # 基础控制器
│ │ │ │ └── CryptoController.java # 加解密控制器
│ │ │ ├── domain # 领域对象
│ │ │ │ └── ApiResponse.java # 统一响应类
│ │ │ ├── filter # 过滤器
│ │ │ │ └── DecryptFilter.java # 解密过滤器
│ │ │ ├── mapper # MyBatis Mapper接口
│ │ │ ├── service/ex # 服务层异常
│ │ │ │ └── ServiceException.java # 业务异常类
│ │ │ ├── utils/safety # 安全工具类
│ │ │ │ ├── SM2Utils.java # SM2非对称加密工具
│ │ │ │ ├── SM3Utils.java # SM3摘要算法工具
│ │ │ │ └── SM4Utils.java # SM4对称加密工具
│ │ │ ├── vo # 视图对象
│ │ │ ├── wrapper # 请求响应包装
│ │ │ │ ├── DecryptRequestWrapper.java # 解密请求包装器
│ │ │ │ ├── EncryptResponseAdvice.java # 加密响应通知
│ │ │ │ └── Sm4KeyHolder.java # SM4密钥持有者
│ │ │ └── BasicTemplateNotLoginBackApplication.java # 启动类
│ │ └── resources # 资源文件
│ │ ├── application-database-dev.yml # 开发环境数据库配置
│ │ ├── application-database-prod.yml # 生产环境数据库配置
│ │ ├── application-dev.yml # 开发环境配置
│ │ ├── application-prod.yml # 生产环境配置
│ │ └── application.yml # 主配置文件
├── LICENSE # 许可证
└── README.md # 介绍文件
环境要求
- JDK 17+
- Maven 3.6+
- PostgreSQL 数据库
- Redis 服务器
项目克隆
git clone https://github.com/wzy-warehouse/basic_template_not_login_back.git
cd basic_template_not_login_back
配置说明
- 数据库配置: 修改
src/main/resources/application-database-dev.yml中的数据库连接信息 - Redis配置: 修改
src/main/resources/application.yml中的Redis连接信息 - 端口配置: 在
application.yml中修改server.port(默认8080)
启动方式
方式一:Maven命令启动
# 开发环境(默认)
mvn spring-boot:run
# 生产环境
mvn spring-boot:run -Pprod
方式二:打包后运行
# 开发环境打包
mvn clean package
# 生产环境打包
mvn clean package -Pprod
# 运行jar包
java -jar target/basic_template_not_login_back.jar
方式三:使用批处理脚本
# Windows系统
bin\package.bat
配置文件说明
application.yml: 主配置文件,公共配置application-dev.yml: 开发环境特定配置application-prod.yml: 生产环境特定配置application-database-dev.yml: 开发环境数据库配置application-database-prod.yml: 生产环境数据库配置
geo_server相关说明
- 版本:2.28.3
- 安装:
docker pull docker.osgeo.org/geoserver:2.28.3
docker run -d \
--log-driver none \
--name geoserver \
-p 8080:4020 \
-e GEOSERVER_ADMIN_USER=admin \
-e GEOSERVER_ADMIN_PASSWORD=geoserver \
-v /mydata/geoserver/data_dir:/data_dir \
kartoza/geoserver
许可证
本项目基于 MIT License 开源,详情请查看LICENSE文件。
Languages
Java
99.6%
Batchfile
0.4%