Spring Boot 项目国产化适配东方通实践指南

Spring Boot 项目国产化适配东方通实践指南

在信创产业蓬勃发展的当下,将 Spring Boot 项目适配国产化中间件成为众多企业技术升级的重要需求。东方通作为国产中间件的领军者,其 TongWeb 服务器具备高可靠性、高性能等特点,能够为企业应用提供坚实的运行基础。本文将详细介绍如何将 Spring Boot 项目适配东方通,助力企业完成技术栈的国产化转型。

一、获取东方通资源

进入东方通官网,在页面中找到"服务与支持"选项。点击进入后,下拉页面选择"在线使用",并提交使用申请。在申请过程中,需如实填写个人信息、公司信息,并申请产品临时授权文件。提交申请后,东方通销售人员会通过申请人手机号添加微信(若手机号绑定微信号)进行后续沟通,并发送相关资料包。资料包通常为压缩文件形式。

  • 往下拉,选择在线试用,申请使用后填写个人信息及公司信息及产品申请临时授权文件
  • 填写申请信息及使用产品信息
  • 获取资料

填写完毕后会有任务联系你,这里不是实时的,估计要等到销售人员看到你的申请后,会通过你的手机号添加微信联系你,因为我的手机号是微信号。然后会给你发资料包,如下图我收到的是个压缩文件包。

  • 解压后内容

二、依赖安装与配置

将收到的压缩文件解压。由于本地测试时需要引入相关依赖的 jar 包,若没有私服权限,可选择将 jar 包安装到本地仓库。东方通提供了便捷的可执行脚本,deployMavenJarinstallMavenJar 分别对应 Windows 系统(.bat 文件)和 Linux 系统(.sh 文件)。根据实际操作系统选择执行相应脚本,若需将依赖上传到私服,则需修改 deployMavenJar 文件中的私服地址信息。我这里选择的是本地安装,执行installMavenJar脚本后,即可完成依赖的本地安装。

三、项目配置与构建

创建一个名为 springboot-web-container 的 Spring Boot 项目,该项目默认使用 Tomcat 作为 Web 容器。为适配东方通的 TongWeb,需在 pom.xml 文件中进行配置。具体步骤如下:

1. 配置 pom.xml

pom.xml 文件中区分了 Spring Boot 不同版本的适配依赖:

  • tongweb-spring-boot-starter-2.x 用于适配 Spring Boot 2.x 版本
  • tongweb-spring-boot-starter-3.x 用于适配 Spring Boot 3.x 版本

以下是具体的配置示例:

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.1.12</version>
        <relativePath/>
    </parent>
    <groupId>com.jianjang.study.web</groupId>
    <artifactId>springboot-web-container</artifactId>
    <version>1.0.0</version>
    <name>springboot-web-container</name>
    <description>springboot-web-container</description>
    <properties>
        <java.version>17</java.version>
    </properties>
    <profiles>
        <profile>
            <id>tomcat</id>
            <properties>
                <profiles.active>tomcat</profiles.active>
                <maven.test.skip>true</maven.test.skip>
            </properties>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <dependencies>
                <dependency>
                    <artifactId>spring-boot-starter-web</artifactId>
                    <groupId>org.springframework.boot</groupId>
                </dependency>
                <dependency>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-test</artifactId>
                    <scope>test</scope>
                </dependency>
            </dependencies>
        </profile>
        <profile>
            <id>tongWeb</id>
            <properties>
                <profiles.active>tongWeb</profiles.active>
                <maven.test.skip>true</maven.test.skip>
            </properties>
            <dependencies>
                <dependency>
                    <artifactId>spring-boot-starter-web</artifactId>
                    <groupId>org.springframework.boot</groupId>
                    <exclusions>
                        <exclusion>
                            <groupId>org.springframework.boot</groupId>
                            <artifactId>spring-boot-starter-tomcat</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-test</artifactId>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>com.tongweb.springboot</groupId>
                    <artifactId>tongweb-spring-boot-starter-3.x</artifactId>
                    <version>7.0.E.6_P12</version>
                </dependency>
            </dependencies>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
    </profiles>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

2. 构建项目

编译构建项目时,使用 Maven命令。通过 -P 参数指定激活 tongWeb 配置模式,跳过测试环节,快速完成项目打包。

shell 复制代码
mvn clean package -PtongWeb -U -Dmaven.test.skip=true

四、授权与启动验证

项目编译完成后,在配置文件中添加东方通授权文件配置,指定 TongWeb 的 license 文件路径。示例如下:

properties 复制代码
# 指定tongweb东方通license文件路径
server.tongweb.license.type: file
server.tongweb.license.path: /Users/zhangjian/Documents/tools/tongweb/license.dat

完成配置后,启动项目。通过日志控制台观察启动过程,若出现与 TongWeb 相关的启动日志信息,则表明 Spring Boot 项目已成功适配东方通 TongWeb 服务器,并可正常运行。

总结

通过以上步骤,成功实现了 Spring Boot 项目对东方通 TongWeb 的国产化适配,为企业应用在信创环境下的稳定运行提供了保障。在实际应用中,企业可根据自身需求和项目特点,进一步优化配置,充分发挥国产化中间件的性能优势。

相关推荐
秋书一叶28 分钟前
SpringBoot项目打包为window安装包
java·spring boot·后端
pwzs1 小时前
Spring MVC 执行流程全解析:从请求到响应的七步走
java·后端·spring·spring mvc
小兵张健1 小时前
互联网必备职场知识(4)—— 共情沟通能力
后端·产品经理·运营
AskHarries2 小时前
使用 acme.sh 自动更新 SSL 证书的指南
后端
Chandler242 小时前
Go:反射
开发语言·后端·golang
pwzs2 小时前
深入浅出 MVCC:MySQL 并发背后的多版本世界
数据库·后端·mysql
盒子69102 小时前
go for 闭环问题【踩坑记录】
开发语言·后端·golang
刘大猫264 小时前
Arthas monitor(方法执行监控)
人工智能·后端·监控
追逐时光者4 小时前
MongoDB从入门到实战之MongoDB简介
后端·mongodb
Huazie4 小时前
在WSL2 Ubuntu中部署FastDFS服务的完整指南
服务器·后端·ubuntu