2026-06-17 16:02:12 +08:00
2026-04-07 20:00:15 +08:00
2026-06-17 16:02:12 +08:00
2026-04-07 20:00:15 +08:00
2026-04-07 20:00:15 +08:00
2026-04-07 20:00:15 +08:00
2026-04-07 20:00:15 +08:00
2026-04-07 20:00:15 +08:00
2026-04-07 20:30:58 +08:00
2026-05-05 19:19:12 +08:00

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

配置说明

  1. 数据库配置: 修改 src/main/resources/application-database-dev.yml 中的数据库连接信息
  2. Redis配置: 修改 src/main/resources/application.yml 中的Redis连接信息
  3. 端口配置: 在 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相关说明

  1. 版本:2.28.3
  2. 安装:
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文件。

S
Description
西安重构后端
Readme MIT 5.8 MiB
Languages
Java 99.6%
Batchfile 0.4%