Mock单元测试和H2内存库的使用_灵耀的博客-CSDN博客 讲述了如何使用H2内存库进行mock数据库测试,但是H2是没有百分比兼容mysql的,mysql中有些函数H2中是没有的需要自己实现,实现逻辑如下。
以dateFormat 函数为例子
需要在建表脚本中添加配置
create-authority.sql
CREATE ALIAS IF NOT EXISTS "DATE_FORMAT" FOR "com.xxx.xxx.xx.xx.H2Functions.dateFormat";
import java.text.SimpleDateFormat;
import java.util.Date;
public class H2Functions {
public static String dateFormat(Date date,String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format.replace("%", "")
.replace("m", "M"));
return sdf.format(date);
}
}