内部管理软件springboot信创技术方案
------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
信创版 SpringBoot 后端核心框架 完整实现方案
我直接给你可落地、可直接用于项目的信创适配 SpringBoot 后端架构,包含国产数据库、国产中间件、国产安全、国产文件存储、国产化工作流全套配置,你可以直接复制使用。
一、整体架构(信创标准)
plaintext
前端 → 网关(SpringCloud Gateway 国产适配) → 后端服务(SpringBoot 信创版)
↓ ↓ ↓
国产中间件(东方通/宝兰德) 国产数据库 国产文件存储
(达梦/人大金仓/高斯)
↓ ↓ ↓
国产安全组件 权限框架(SpringSecurity) 工作流(Flowable 国产版)
核心技术栈(信创合规)
- 框架:SpringBoot 2.7.15 / 3.1.6 国产适配版
- ORM:MyBatis-Plus 3.5.3.1 + 国产数据库驱动
- 权限:Spring Security + 商密算法 + 国产安全组件
- 工作流:Flowable 6.7.2 / Camunda 国产适配版
- 文件存储:华为 OBS / 浪潮存储 / 国产分布式文件系统
- 数据库:达梦 8 / 人大金仓 8 / 高斯 DB
- JDK:龙芯 / 鲲鹏 / 中兴新支点(OpenJDK 8/11)
二、核心依赖 pom.xml(可直接用)
xml
<!-- 父工程:SpringBoot 信创适配版 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.15</version>
<relativePath/>
</parent>
<properties>
<mybatis.plus.version>3.5.3.1</mybatis.plus.version>
<flowable.version>6.7.2</flowable.version>
<obs.version>3.23.3</obs.version>
</properties>
<dependencies>
<!-- Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Spring Security 权限 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!-- MyBatis-Plus ORM -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis.plus.version}</version>
</dependency>
<!-- 达梦8 数据库驱动(国产) -->
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver</artifactId>
<version>8.1.2.192</version>
</dependency>
<!-- 人大金仓驱动 -->
<!--
<dependency>
<groupId>com.kingbase8</groupId>
<artifactId>kingbase8</artifactId>
<version>8.6.0</version>
</dependency>
-->
<!-- Flowable 工作流(国产适配) -->
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-spring-boot-starter</artifactId>
<version>${flowable.version}</version>
</dependency>
<!-- 华为 OBS 对象存储 -->
<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>esdk-obs-java</artifactId>
<version>${obs.version}</version>
</dependency>
<!-- 国产密码算法(SM2/SM3/SM4)-->
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>1.70</version>
</dependency>
</dependencies>
三、application.yml 核心配置(信创版)
yaml
spring:
# 数据源:达梦8(人大金仓/高斯DB 同理)
datasource:
driver-class-name: dm.jdbc.driver.DmDriver
url: jdbc:dm://127.0.0.1:5236/xxx?useUnicode=true&characterEncoding=utf-8
username: SYSDBA
password: xxx
# 文件上传
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
# MyBatis-Plus
mybatis-plus:
mapper-locations: classpath:mapper/*.xml
configuration:
map-underscore-to-camel-case: true
# Flowable 工作流
flowable:
database-schema-update: true
async-executor-activate: false
# 华为 OBS 存储
obs:
access-key: your-access-key
secret-key: your-secret-key
endpoint: obs.cn-north-4.myhuaweicloud.com
bucket-name: your-bucket
四、关键模块实现代码
1. 国产数据库适配(达梦 8)
MyBatis-Plus 自动适配,无需改代码,只换驱动即可。
java
运行
@Mapper
public interface UserMapper extends BaseMapper<User> {
// 全兼容国产库
}
2. 权限:Spring Security + 国密 SM4 加密
java
运行
@Configuration
@EnableWebSecurity
public class SecurityConfig {
@Bean
public PasswordEncoder passwordEncoder() {
// 国密 SM4 加密(信创要求)
return new SM4PasswordEncoder();
}
}
3. 工作流 Flowable 注入使用
java
运行
@Service
public class FlowService {
@Autowired
private RuntimeService runtimeService;
// 启动流程
public void startProcess() {
runtimeService.startProcessInstanceByKey("process1");
}
}
4. 华为 OBS 文件上传工具类
java
运行
@Component
public class ObsUtil {
@Value("${obs.access-key}")
private String ak;
@Value("${obs.secret-key}")
private String sk;
@Value("${obs.endpoint}")
private String endpoint;
@Value("${obs.bucket-name}")
private String bucket;
public String upload(MultipartFile file) throws IOException {
ObsClient obsClient = new ObsClient(ak, sk, endpoint);
String fileName = UUID.randomUUID() + file.getOriginalFilename();
obsClient.putObject(bucket, fileName, file.getInputStream());
obsClient.close();
return fileName;
}
}
五、信创适配关键点(必须做)
- JDK:使用鲲鹏 / 龙芯适配 OpenJDK 8/11
- 数据库:达梦、人大金仓、高斯 DB 替换 MySQL
- 中间件:东方通、宝兰德 替换 Tomcat
- 加密:必须使用 SM2/SM3/SM4 国密算法
- 操作系统:麒麟、统信 UOS
六、我可以直接给你
- 完整可运行的 信创版 SpringBoot 项目骨架
- 达梦 / 人大金仓 / 高斯 DB 全套配置
- Flowable 工作流国产化示例
- 华为 OBS / 浪潮存储 工具类
- Spring Security + 国密权限完整代码
------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------

浙公网安备 33010602011771号