📄 proxy.jsp
字号:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,java.io.*"%>
<%!
String typeToString(int i)
{
String ret="";
switch(i)
{
case(1):ret="CHAR";break;
case(2):ret="NUMERIC";break;
case(3):ret="DECIMAL";break;
case(4):ret="INTEGER";break;
case(5):ret="SMALLINT";break;
case(6):ret="FLOAT";break;
case(8):ret="DOUBLE";break;
case(12):ret="VARCHAR";break;
case(91):ret="DATE";break;
default:ret="other";
}
return ret;
}
%>
<%!
String getCol(ResultSet rst,int type,int colNum)throws Exception
{
String ret="";
switch(type)
{
case(1):ret=rst.getString(colNum);break;
case(4):ret=String.valueOf(rst.getInt(colNum));break;
case(5):ret=String.valueOf(rst.getInt(colNum));break;
case(6):ret=String.valueOf(rst.getFloat(colNum));break;
case(8):ret=String.valueOf(rst.getDouble(colNum));break;
case(12):ret=rst.getString(colNum);break;
default:ret="not know";
}
return trans(ret);
}
%>
<%! String trans(String chi)
{
String result = null;
byte temp [];
try
{
temp=chi.getBytes("iso-8859-1");
result = new String(temp);
}
catch(UnsupportedEncodingException e)
{
System.out.println (e.toString());
}
return result;
}
%>
<html>
<body>
<center>
<html>
<body>
数据库动态代理v0.5b:<hr>
<form action="proxy.jsp" method=get>
<table><tr><td>数据库的名字:<input type=text name=database></td>
<td>表的名字:<input type=text name=table></td></tr>
<tr> <td colspan=2><input type=submit value=提交></td></tr>
</table>
</form>
<%
String database=(String)request.getParameter("database");
String table=(String)request.getParameter("table");
%>
<table border=1>
<%
try
{
//装载驱动程序
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
//创建连接
Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433","bn","bn");
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("use "+database+";select * from "+table);
ResultSetMetaData meta=rst.getMetaData() ;
int col=meta.getColumnCount();
out.println("表"+table+"共有:"+col+"个字段,这些字段是:<br>");
out.println("<tr>");
for(int i=1;i<col+1;i++)
{
out.println("<td>字段名:");
out.println(meta.getColumnName(i));
out.println("类型: ");
out.println(typeToString(meta.getColumnType(i)));
out.println("</td>");
}
out.println("</tr>");
while(rst.next())
{
out.println("<tr>");
for(int i=1;i<col+1;i++)
{
out.println("<td>"+getCol(rst,meta.getColumnType(i),i)+"</td>");
}
out.println("</tr>");
}
//关闭连接、释放资源
rst.close();
stmt.close();
con.close();
}
catch(Exception e)
{
e.printStackTrace();
}
%>
</table>
<center>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -