换到新公司之后,经常需要编写sql,但是因为sql我们经常需要写成StringBuffer的形式,,想着能不能通过代码,直接将sql转化成StringBuffer的形式,
所以第一步,先看看网络上有没有人已经做出这种效果了,参照:http://www.divcss5.com/html/h546.shtml
但是格式,我有点不太喜欢,所以我自己简单修改了一下代码,自己可以现在sql连接工具中将sql格式化,然后放到这个里面 直接做转化,以下就是代码,望对大家有所帮助:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>change SQL</TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<META http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script>
var ie = !-[1,];
function changeSQL(){
var srcSQL = document.getElementById("srcSQL");
var srcInner = srcSQL.value;
var sqlBuf = ""
var BufObj = "StringBuffer sqlBuf = new StringBuffer();"
var newSrc = "";
if(ie){
var newSrc = srcInner.split("\r\n");
}else{
var patt = new RegExp(/.+/g);
var newSrc = srcInner.match(patt);
}
var len = newSrc.length;
for(var i=0;i<len;i++){
var temp=newSrc[i];
if(i < len-1){
sqlBuf += "sql.append(\" " + temp + " \")" + ";" + "\r\n";
}
if(i == len-1){
sqlBuf += "sql.append(\" " + temp + " \");";
}
}
var showSQL = document.getElementById("showSQL");
showSQL.innerText = BufObj + "\n" + sqlBuf;
}
</script>
</HEAD>
<BODY>
<table border="1" width="100%" >
<tr align="center">
<td width="45%"><textarea id="srcSQL" rows="40" cols="85" ></textarea></td>
<td>
<button οnclick="changeSQL()" style="cursor:hand;"><font color="blue" size="5"><b>转换</b></button><p>
</td>
<td width="45%"><textarea id="showSQL" rows="40" cols="85" ></textarea></td>
</tr>
</table>
</BODY>
</HTML>