idea 正则全局替换文件文本

因为项目原先采用的log4j,现使用log4j2,需将原有log4j的代码进行替换,以前的代码类似如下:

private static final Logger logger = LoggerFactory.getLogger(TestController.class);
logger.error(..)

例如对controller层的日志进行替换

1. 引入LogUtil类

通过分析,所有controlle层都加了@controller spring注解,一定引用了import org.springframework.stereotype.Controller; 所以就对这个字符串进行替换(mac快捷键shift+command+r,其他系统自行查找快捷键,下面的操作都是mac 系统为例)

注意匹配要选择regex

需要加入换行符,mac系统换行符为\n,
idea 正则全局替换文件文本_第1张图片

2. 删除字符串类似 private static final Logger logger …

因为不同的controller类,该字符串可能不一样,代码举例如下:

private static final Logger logger = LoggerFactory.getLogger(TestController.class);
static final Logger log = LoggerFactory.getLogger(TestController.class);
private Logger logger = LoggerFactory.getLogger(getClass());

像这种情况,我们就需要用到正则表达式了,如下图所示
idea 正则全局替换文件文本_第2张图片

3. 替换logger.info或者log.warn

最后需要将logger.info替换为LogUtil.CONTROLLER.info或者LogUtil.CONTROLLER.warn等,也采用正则匹配替换,如下所示:
idea 正则全局替换文件文本_第3张图片

你可能感兴趣的:(java)