Should I reusing Statement increases performance?
protected final Map<String, Statement> statementCaches = Collections.synchronizedMap(new WeakHashMap<>());
...
Statement stmt = CCJSqlParserUtil.parse(sql)
...
statementCaches.computeIfAbsent(sql, stmt);
...