*执行一条insert语句并传参数*/
create or replace procedure p_test2(i in number) as
begin
insert into t values (i,'x'||to_char(i));
commit;
end;
/

<%@ page language="java" contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<html>
<body>
<table>
<tr><td>aaa</td><td>bbb</td></tr>
<%
String driver = "oracle.jdbc.driver.OracleDriver";
String strUrl = "jdbc:oracle:thin:@192.168.1.6:1521:db";
    
    Class.forName(driver);
    Connection conn = DriverManager.getConnection(strUrl, "scott", "tiger");

    String procedure = "{call p_test2 (?) }";
    CallableStatement cstmt = conn.prepareCall(procedure);
    cstmt.setInt(1,33);
    cstmt.executeUpdate();

    Statement stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery("select * from t");

    while(rs.next())
    {
        out.println("<tr><td>" + rs.getString(1) + "</td><td>" + rs.getString(2) + "</td></tr>");
    }

    rs.close();
    stmt.close();
    conn.close();
%>
</table>
<p>
<%
out.print(conn.isClosed());
%>

</body>
</html>
</body>
</html>