index.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="inquire"%>
<HTML><BODY ><FONT>
<FORM action="newDatabase.jsp" method=post>
添加新记录:
<table border=1>
<tr><td> 产品号:</td><td><Input type="text" name="number"></td></tr>
<tr><td>名称:</td><td><Input type="text" name="name"></td></tr>
<tr><td width=150>生产日期:</td><td><Input type="text" name="madeTime"></td></tr>
<tr><td>价格:</td><td><Input type="text" name="price"></td></tr>
</table>
<BR><Input type="submit" name="b" value="提交">
</FORM>
<BR>product表添加新记录前的记录是:
<inquire:QueryTag dataBaseName="warehouse"
tableName="product"
user="root" password=""/>
<BR><%=queryResult%>
</Font></BODY></HTML>
newDatabase.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="inquire"%>
<HTML><BODY >
<%!
String handleStr(String s) {
try {
byte bb[]=s.getBytes("iso-8859-1");
return new String(bb);
}
catch(Exception exp){}
return s;
}
%>
<% String nu=handleStr(request.getParameter("number"));
String na=handleStr(request.getParameter("name"));
String mT=handleStr(request.getParameter("madeTime"));
String pr=handleStr(request.getParameter("price"));
%>
<inquire:AddRecord number="<%=nu%>"name="<%=na%>"
madeTime="<%=mT%>"price="<%=pr%>"/>
<BR>product表添加新记录后的记录是:
<inquire:QueryTag dataBaseName="warehouse"tableName="product" user="root" password=""/>
<BR><%=queryResult%></BODY></HTML>
QueryTag.tag
<%@ tag pageEncoding="GB2312" %>
<%@ tag import="java.sql.*" %>
<%@ attribute name="dataBaseName" required="true" %>
<%@ attribute name="tableName" required="true" %>
<%@ attribute name="user" required="true" %>
<%@ attribute name="password" required="false" %>
<%@ variable name-given="biao" scope="AT_END" %>
<%@ variable name-given="queryResult" scope="AT_END" %>
<% StringBuffer result;
result=new StringBuffer();
try{ Class.forName("com.mysql.jdbc.Driver");
}
catch(Exception e){}
Connection con;
Statement sql;
ResultSet rs;
try{ result.append("<table border=1>");
String uri="jdbc:mysql://127.0.0.1/"+dataBaseName;
con=DriverManager.getConnection(uri,user,password);
DatabaseMetaData metadata=con.getMetaData();
ResultSet rs1=metadata.getColumns(null,null,tableName,null);
int 字段个数=0;
result.append("<tr>");
while(rs1.next()){
字段个数++;
String clumnName=rs1.getString(4);
result.append("<td>"+clumnName+"</td>");
}
result.append("</tr>");
sql=con.createStatement();
rs=sql.executeQuery("SELECT * FROM "+tableName);
while(rs.next()){
result.append("<tr>");
for(int k=1;k<=字段个数;k++)
result.append("<td>"+rs.getString(k)+"</td>");
result.append("</tr>");
}
result.append("</table>");
con.close();
}
catch(SQLException e){
result.append("请输入正确的用户名和密码");
}
//返回对象queryResult:
jspContext.setAttribute("queryResult",new String(result));
jspContext.setAttribute("biao",tableName); //返回biao对象
%>
AddRecord.tag
<%@ tag pageEncoding="GB2312" %>
<%@ tag import="java.sql.*" %>
<%@ attribute name="number" required="true" %>
<%@ attribute name="name" required="true" %>
<%@ attribute name="madeTime" required="true" %>
<%@ attribute name="price" required="true" %>
<% float p=Float.parseFloat(price);
String condition=
"INSERT INTO product VALUES"+
"("+"'"+number+"','"+name+"','"+madeTime+"',"+p+")";
try{ Class.forName("com.mysql.jdbc.Driver");
}
catch(Exception e){}
Connection con;
Statement sql;
ResultSet rs;
try{ String uri=
"jdbc:mysql://127.0.0.1/warehouse?"+
"user=root&password=&characterEncoding=gb2312";
con=DriverManager.getConnection(uri);
sql=con.createStatement();
sql.executeUpdate(condition);
con.close();
}
catch(Exception e){
out.print(""+e);
}
%>