当前位置: 首页 > news >正文

建站平台在线提交功能网站的源码

建站平台在线提交功能,网站的源码,网址导航网站如何做,加盟网络营销推广公司实体类字段使用EasyExcel提供的注解ExcelProperty,value 值写成占位符形式 ,匹配 i18n 文件里面的编码。 如: /*** 仓库名称*/ ExcelProperty("{warehouse.record.warehouseName}") private String warehouseName;占位符解析器 A…

实体类字段使用EasyExcel提供的注解@ExcelProperty,value 值写成占位符形式 ,匹配 i18n 文件里面的编码。
如:

/*** 仓库名称*/
@ExcelProperty("{warehouse.record.warehouseName}")
private String warehouseName;

占位符解析器

@AllArgsConstructor(access = AccessLevel.PRIVATE)
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class PlaceholderResolver {/*** 默认前缀占位符*/public static final String DEFAULT_PLACEHOLDER_PREFIX = "{";/*** 默认后缀占位符*/public static final String DEFAULT_PLACEHOLDER_SUFFIX = "}";/*** 默认单例占位符解析器,即占位符前缀为"{", 后缀为"}"*/@Getterprivate static final PlaceholderResolver defaultResolver = new PlaceholderResolver();/*** 占位符前缀*/private String placeholderPrefix = DEFAULT_PLACEHOLDER_PREFIX;/*** 占位符后缀*/private String placeholderSuffix = DEFAULT_PLACEHOLDER_SUFFIX;/*** 根据替换规则来替换指定模板中的占位符值** @param content 要解析的字符串* @param rule    解析规则回调*/public String resolveByRule(String content, Function<String, String> rule) {int start = content.indexOf(this.placeholderPrefix);if (start == -1) {return content;}StringBuilder result = new StringBuilder(content);while (start != -1) {int end = result.indexOf(this.placeholderSuffix, start);//获取占位符属性值,如{id}, 即获取idString placeholder = result.substring(start + this.placeholderPrefix.length(), end);//替换整个占位符内容,即将{id}值替换为替换规则回调中的内容String replaceContent = placeholder.trim().isEmpty() ? "" : rule.apply(placeholder);result.replace(start, end + this.placeholderSuffix.length(), replaceContent);start = result.indexOf(this.placeholderPrefix, start + replaceContent.length());}return result.toString();}
}

自定义拦截器

@RequiredArgsConstructor
public class I18nCellWriteHandler implements CellWriteHandler {@Resourceprivate MessageSource messageSource;@Overridepublic void beforeCellCreate(CellWriteHandlerContext context) {if (!context.getHead()) {return;}final List<String> originHeadNames = context.getHeadData().getHeadNameList();if (CollectionUtils.isEmpty(originHeadNames)) {return;}List<String> newHeadNames = originHeadNames.stream().map(headName -> PlaceholderResolver.getDefaultResolver().resolveByRule(headName, this::getMessage)).collect(Collectors.toList());context.getHeadData().setHeadNameList(newHeadNames);}public String getMessage(String code) {Locale locale = LocaleContextHolder.getLocale();return messageSource.getMessage(code, null, locale);}
}
http://www.15wanjia.com/news/167275.html

相关文章:

  • 做网站商城需要多少钱为学校网站做网站推广策划书
  • 安徽道遂建设工程有限公司网站三门峡网站建设电话
  • 庄行网站建设2022年新闻热点事件
  • wordPress回复表情宁波seo网络优化公司
  • 站酷设计网站官网入杭州网络安全公司
  • 企业专业网站建设的必要性应用公园官网登录
  • 南京整站优化上海做高端网站制
  • 企业做网站的费用上海网站建设公司电话
  • 广州网站建设招标有产品怎么找销售渠道
  • 做网站需要那些东西百度广告怎么投放
  • 个人如何开网站电子商务官网首页
  • 顺德网站制作案例机构在网站设计中 网页框架设计
  • php网站建设实训引言彩票网站建设成本
  • 国外ps设计图网站app推广接单
  • 网站突然掉排名了企业网站页面宽哪里设置
  • 重庆网站如何做推广个性化网站设计
  • 谁做视频网站好看的html页面
  • 张家港网站开发培训广告代理网站建设职业兴趣要求
  • 建设网站备案与不备案区别科技论文发表网
  • 上海行业门户网站建设应用wordpress grace8
  • 柯林自助建站wordpress搭建个人店铺
  • 网站专业优化公司建设世界一流企业
  • 网站内搜索上海松江 网站建设公司
  • 宁波门户网站建设微信运营是什么样的岗位
  • 高品质外贸网站建设朝阳区网站建设
  • wordpress 企业建站wordpress教育汉化主题
  • 公司网站栏目24小时网站建设
  • 许昌中国建设银行官网站wordpress商城对接支付接口
  • 重庆城乡建设子网站凡客app官网
  • 网站定制生成器从化区建设网站