3.9 KiB
3.9 KiB
描述
提供前后端在请求中得国别进行对应语言的渲染 将国际化语言持久化到mysql提供实时管理,缓存到redis 提供服务模块的快速加载 前端通过api加载完成页面国际化;后端通过redis 快速加载,通过字典注解、工具类完成列表查询内容国际化。
使用方法
- 以组件方式引入在当前 springboot 工程引入 组件包
这里输入代码 <dependency>
<groupId>net.rzdata</groupId>
<artifactId>rz-i18n</artifactId>
<version>0.0.2-SNAPSHOT</version>
</dependency>
- 组件包扫描包
@ComponentScan(basePackages = {"org.example","com.blueland"})
@MapperScan(basePackages = {"org.example","com.blueland.common.core.mapper"})
@EnableAutoConfiguration
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
. 增加配置文件 application.yml
server:
port: 8080
servlet:
context-path: /crm-internation
session:
cookie:
name: crm-internation
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
druid:
driver-class-name: com.mysql.cj.jdbc.Driver
username: crm
password: crm@123
url: jdbc:mysql://192.168.1.13:3308/crm_usm?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
redis:
database: 9
host: 192.168.1.169
password: ''
tm:
secretId: AKID4IXccMhHdjcJm0wqPjndHhspkbDbGeJz
secretKey: aw3v5B3h8OPQO7j8JPGsFNHwMXTAcprf
logging:
level:
com.blueland.common.core: debug
mybatis-flex:
type-aliases-package: com.blueland.common.core.domain
knife4j:
enable: true
openapi:
title: 国际化接口文档
group:
test1:
group-name: 国际化
api-rule: package
api-rule-resources:
- com.blueland.common.core.controller
- 创建数据库表:
CREATE TABLE `t_international` (
`id` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '唯一ID',
`code` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '国际化编码',
`name` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '名称',
`lang` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '语言',
`type` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '标识(前端:front,后端:back)',
`tenant_id` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '租户号',
`create_by` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
KEY `idx_code` (`code`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='国际化';
运行截图:
访问接口文档:
请求接口:
前端接入:
请求前端接口:GET /crm-internation/international/findLangPackage header: tenantid:MID 参数: type:front
后端接入:
请求前端接口:GET /crm-internation/international/findLangPackage header: tenantid:MID 参数: type:back