jsp调用存储过程

以下以SQL server 2000示例:

1.新建表:

SQL code复制代码
CREATE TABLE [mytest] (
    [id] [int] NOT NULL ,
    [name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    [phone] [varchar] (13) COLLATE Chinese_PRC_CI_AS NULL ,
    [addr] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO

2.新建存储过程:

SQL code复制代码
create procedure get_info @name varchar(50),@phone varchar(13),@addr varchar(50)
as
select *
from mytest
go

3.JSP代码:

JSP code复制代码
<%@ page language="java" pageEncoding="UTF-8" import="java.sql.*,tools.Database"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" divfix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" divfix="html" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" divfix="logic" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles" divfix="tiles" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html locale="true">
  <head>
    <html:base />
    <title>proc_test.jsp</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">   
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
  </head>
  <body>
    This is a test for procedure. <br>
    <%   
     String username="sa";
     String password = "123456";
     String url = "jdbc:microsoft:sqlserver://192.168.1.112:1433;DatabaseName=test";
     Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
     Connection conn = DriverManager.getConnection(url, username, password);
     String sql = "execute get_info";
     //创建一个CallableStatement 对象来调用数据库存储过程
     //CallableStatement comm = conn.divpareCall(sql);
     Statement stmt = conn.createStatement();
       
     ResultSet res = stmt.executeQuery(sql);
     while(res.next())...{
    %>
   <table>
        <tr>
            <td><%=res.getString("id")%></td>
            <td><%=res.getString("name")%></td>
            <td><%=res.getString("phone")%></td>
            <td><%=res.getString("addr")%></td>
        </tr>
    </table>
    <%}
    res.close();
    stmt.close();
    conn.close();
    %>
  </body>
</html:html>

4.执行结果:

This is a test for procedure.
1 cc 1234 cs
2 dd 4567 bj
3 ee 1245 ca
 

posted @ 2020-04-08 13:32  厦门哈韩  阅读(352)  评论(0编辑  收藏  举报