网站后台密码怎么改,下载wix做的网站,商标怎么设计,wordpress4.0 中文模板占位替换#xff0c;在项目开发中#xff0c;还是很常用的。比如在代码中获取参数#xff0c;消息推送可以使用变量占位#xff0c;我比较推荐使用 SPEL 表达式。
在注解中#xff0c;获取方法的参数
public class SpElParser {private static final ExpressionPars…模板占位替换在项目开发中还是很常用的。比如在代码中获取参数消息推送可以使用变量占位我比较推荐使用 SPEL 表达式。
在注解中获取方法的参数
public class SpElParser {private static final ExpressionParser parser new SpelExpressionParser();public static String getKey(String key, String [] parameterNames, Object [] args) {Expression expression parser.parseExpression(key);EvaluationContext context new StandardEvaluationContext();if (args.length 0) {return null;}for (int i 0; i args.length; i) {context.setVariable(parameterNames[i], args[i]);}return expression.getValue(context, String.class);}}用法
LogRecord(logBizId “#dto.id”)
LogRecord(logBizId “#dto.id ‘_’ #dto.name”)
模板占位替换 public static String convert(String content, MapString, String paramMap) {if (!StringUtils.hasText(content) || CollectionUtils.isEmpty(paramMap)) {return content;}ExpressionParser parser new SpelExpressionParser();TemplateParserContext parserContext new TemplateParserContext();return parser.parseExpression(content, parserContext).getValue(paramMap, String.class);}public static String convert(String content, String json) {if (!StringUtils.hasText(content) || !StringUtils.hasText(json)) {return content;}MapString, String paramMap JacksonUtils.jsonObject(json,new TypeReferenceMapString, String() {});return convert(content, paramMap);}{name:张三
}用法1变量占位替换
String content #{[name]};用法2变量占位替换 字符串拼接
String content #{Hello, [name] !}; 用法3判断变量是否为空
String content #{[name1] ! null ? Hello, [name1] ! : };