[重大更新] 使用 spring 新特性 HttpServiceClient 替代 Dubbo 降低框架使用难度(半成本 数据权限不好使)

This commit is contained in:
疯狂的狮子Li
2026-03-20 19:56:09 +08:00
parent 9cd198d99d
commit b6d2274b53
127 changed files with 1894 additions and 1496 deletions

View File

@@ -8,6 +8,7 @@ import org.dromara.common.translation.core.handler.TranslationBeanSerializerModi
import org.dromara.common.translation.core.handler.TranslationHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.jackson.autoconfigure.JacksonAutoConfiguration;
import org.springframework.boot.jackson.autoconfigure.JsonMapperBuilderCustomizer;
import org.springframework.context.annotation.Bean;
import tools.jackson.databind.ser.SerializerFactory;
@@ -42,13 +43,4 @@ public class TranslationConfig {
TranslationHandler.TRANSLATION_MAPPER.putAll(map);
}
@Bean
public JsonMapperBuilderCustomizer translationInitCustomizer() {
return builder -> {
SerializerFactory serializerFactory = builder.serializerFactory();
serializerFactory = serializerFactory.withSerializerModifier(new TranslationBeanSerializerModifier());
builder.serializerFactory(serializerFactory);
};
}
}

View File

@@ -0,0 +1,29 @@
package org.dromara.common.translation.config;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.translation.core.handler.TranslationBeanSerializerModifier;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.jackson.autoconfigure.JacksonAutoConfiguration;
import org.springframework.boot.jackson.autoconfigure.JsonMapperBuilderCustomizer;
import org.springframework.context.annotation.Bean;
import tools.jackson.databind.ser.SerializerFactory;
/**
* 翻译模块额外修改jackson配置
*
* @author Lion Li
*/
@Slf4j
@AutoConfiguration(before = JacksonAutoConfiguration.class)
public class TranslationJacksonConfig {
@Bean
public JsonMapperBuilderCustomizer translationInitCustomizer() {
return builder -> {
SerializerFactory serializerFactory = builder.serializerFactory();
serializerFactory = serializerFactory.withSerializerModifier(new TranslationBeanSerializerModifier());
builder.serializerFactory(serializerFactory);
};
}
}

View File

@@ -5,7 +5,6 @@ import org.dromara.common.translation.constant.TransConstant;
import org.dromara.common.translation.core.TranslationInterface;
import org.dromara.system.api.RemoteDeptService;
import lombok.AllArgsConstructor;
import org.apache.dubbo.config.annotation.DubboReference;
/**
* 部门翻译实现
@@ -16,8 +15,7 @@ import org.apache.dubbo.config.annotation.DubboReference;
@TranslationType(type = TransConstant.DEPT_ID_TO_NAME)
public class DeptNameTranslationImpl implements TranslationInterface<String> {
@DubboReference
private RemoteDeptService remoteDeptService;
private final RemoteDeptService remoteDeptService;
@Override
public String translation(Object key, String other) {

View File

@@ -2,7 +2,6 @@ package org.dromara.common.translation.core.impl;
import cn.hutool.core.convert.Convert;
import lombok.AllArgsConstructor;
import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.common.core.constant.CacheNames;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.redis.utils.CacheUtils;
@@ -23,8 +22,7 @@ import java.util.List;
@TranslationType(type = TransConstant.USER_ID_TO_NICKNAME)
public class NicknameTranslationImpl implements TranslationInterface<String> {
@DubboReference
private RemoteUserService remoteUserService;
private final RemoteUserService remoteUserService;
@Override
public String translation(Object key, String other) {

View File

@@ -5,7 +5,6 @@ import org.dromara.common.translation.constant.TransConstant;
import org.dromara.common.translation.core.TranslationInterface;
import org.dromara.resource.api.RemoteFileService;
import lombok.AllArgsConstructor;
import org.apache.dubbo.config.annotation.DubboReference;
/**
* OSS翻译实现
@@ -16,8 +15,7 @@ import org.apache.dubbo.config.annotation.DubboReference;
@TranslationType(type = TransConstant.OSS_ID_TO_URL)
public class OssUrlTranslationImpl implements TranslationInterface<String> {
@DubboReference(mock = "true")
private RemoteFileService remoteFileService;
private final RemoteFileService remoteFileService;
@Override
public String translation(Object key, String other) {

View File

@@ -9,7 +9,6 @@ import org.dromara.common.translation.constant.TransConstant;
import org.dromara.common.translation.core.TranslationInterface;
import org.dromara.system.api.RemoteUserService;
import lombok.AllArgsConstructor;
import org.apache.dubbo.config.annotation.DubboReference;
/**
* 用户名翻译实现
@@ -20,8 +19,7 @@ import org.apache.dubbo.config.annotation.DubboReference;
@TranslationType(type = TransConstant.USER_ID_TO_NAME)
public class UserNameTranslationImpl implements TranslationInterface<String> {
@DubboReference
private RemoteUserService remoteUserService;
private final RemoteUserService remoteUserService;
@Override
public String translation(Object key, String other) {

View File

@@ -1,4 +1,5 @@
org.dromara.common.translation.config.TranslationConfig
org.dromara.common.translation.config.TranslationJacksonConfig
org.dromara.common.translation.core.impl.DeptNameTranslationImpl
org.dromara.common.translation.core.impl.DictTypeTranslationImpl
org.dromara.common.translation.core.impl.OssUrlTranslationImpl