Solon

使用分布式国际化配置

使用分布式国际化配置服务(目前适配有:water, rock)

//注册国际化包工厂
@Configuration
public class DemoConfig {
    @Bean
    public I18nBundleFactory i18nBundleFactory(){
        //将国际化服务,切换为云端接口
        return new CloudI18nBundleFactory();
    }
}

//使用 solon.i18n 接口
@Controller
public class DemoController{
    I18nService i18nService = new I18nService("test-api");
    
    @Mapping("/hello")
    public String hello(Locale locale){
        return i18nService.get(Locale, "hello");
    }
}

可以定制自己的语言包服务(比如基于数据库)

public class CloudI18nServiceImpl implements CloudI18nService{
    public Pack pull(String group, String packName, Locale locale){
        //...
    }
}

CloudManager.register(new CloudI18nServiceImpl());