代码拉取完成,页面将自动刷新
同步操作将从 ZaleJ/JS-mybatis-log-plugin 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
<!DOCTYPE html>
<html lang="ch-zn">
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
function multiTransefer(inputText) {
// 将传入的字符串根据MyBatis的标识拆分成数组
var mybatisSQLTexts = [];
while (inputText.lastIndexOf('Preparing: ') > -1) {
// 因为是从尾部截取,所以需要从数组的头部添加
mybatisSQLTexts.unshift(inputText.substring(inputText.lastIndexOf('Preparing: ')));
inputText = inputText.substring(0, inputText.lastIndexOf('Preparing: '));
}
console.log(mybatisSQLTexts);
// 将数组中的字符串挨个处理,以数组形式返回
for (var i = 0; i < mybatisSQLTexts.length; i++) {
parseSql(mybatisSQLTexts[i]);
}
}
// 单句的问号生成SQL
function parseSql(textVa) {
// 获取带问号的SQL语句
var statementStartIndex = textVa.indexOf('Preparing: ');
var statementEndIndex = textVa.length - 1;
for (var i = statementStartIndex; i < textVa.length; i++) {
if (textVa[i] === "\n") {
statementEndIndex = i;
break;
}
}
var statementStr = textVa.substring(statementStartIndex + "Preparing: ".length, statementEndIndex);
// console.log(statementStr);
//获取参数
var parametersStartIndex = textVa.indexOf('Parameters: ');
var parametersEndIndex = textVa.length - 1;
for (var i = parametersStartIndex; i < textVa.length; i++) {
if (textVa[i] === "\n") {
parametersEndIndex = i;
break;
} else {
// console.log(textVa[i]);
}
}
var parametersStr = textVa.substring(parametersStartIndex + "Parameters: ".length, parametersEndIndex);
parametersStr = parametersStr.split(",");
// console.log(parametersStr);
for (var i = 0; i < parametersStr.length; i++) {
// 如果数据中带括号将使用其他逻辑
tempStr = parametersStr[i].substring(0, parametersStr[i].indexOf("("));
// 获取括号中内容
typeStr = parametersStr[i].substring(parametersStr[i].indexOf("(") + 1, parametersStr[i].indexOf(")"));
// 如果为字符类型
if (typeStr === "String" || typeStr === "Timestamp" || typeStr === "Date") {
statementStr = statementStr.replace("?", "'" + tempStr.trim() + "'");
} else {
// 数值类型
statementStr = statementStr.replace("?", tempStr.trim());
}
}
// console.log(statementStr);
document.getElementById("logAfterId").value += '\n\n\n';
document.getElementById("logAfterId").value += statementStr;
return textVa;
}
function clearContent() {
document.getElementById('logBeforeId').value = '';
document.getElementById('logAfterId').value = '';
}
</script>
</head>
<body>
<textarea style="width:40%;" name="logBefore" id="logBeforeId" rows="40" placeholder="转换前的log"></textarea>
<button style="width:60px" type="submit" onclick="multiTransefer(document.getElementById('logBeforeId').value)">转换</button>
<button style="width:60px" type="input" onclick="clearContent()">清除</button>
<textarea style="width:40%;" name="logAfter" id="logAfterId" rows="40" placeholder="转换后的SQL"></textarea>
</body>
</html>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。