⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 invokestoreprocedure_sqlserver.jsp

📁 此资源是jsp应用开发 邓子云等编写的一书里的源代码
💻 JSP
字号:
<%@ page language="java" contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*,javax.naming.*,javax.sql.*" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>调用SQLServer数据库存储过程</title>
  </head>  
  <body>
  <%
   	Connection con = null;
   // 定义调用存储过程和函数的 SQL 语句
	String callSQL1 = "{call show_students}";
	String callSQL2 = "{call onestudent(?,?,?)}";
	String callSQL3 = "{? = call ageofstu(?)}";
	 
	try {
			// 通过连接池来获得一个连接
			Context initContext = new InitialContext();
			Context envContext  = (Context)initContext.lookup("java:/comp/env");
			DataSource ds = (DataSource)envContext.lookup("jdbc/sqlserver");
			con = ds.getConnection();
		
			// 调用第 1 个存储过程
			CallableStatement cs = con.prepareCall(callSQL1);
			ResultSet rs = cs.executeQuery();
			out.println("<h1>第一个存储过程调用结果</h1><br>");
			while (rs.next()) {
				String id = rs.getString(1);
				String name = rs.getString(2);
				String age = rs.getString(3);
				out.println(id + "  " + name + " " + age+"<br>");
			}			
			// 调用第 2 个存储过程
			cs = con.prepareCall(callSQL2);
			cs.setString(1, "2");
			cs.registerOutParameter(2, Types.CHAR);
			cs.registerOutParameter(3, Types.INTEGER);
			cs.execute();
			String name = cs.getString(2);
			int age = cs.getInt(3);
			out.println("<h1>第二个存储过程调用结果</h1><br>");
			out.println("This student's name is " + name
					+ " and age is " + age+"<br>");
			// 调用函数
			cs = con.prepareCall(callSQL3);
			cs.setString(2, "小罗");
			cs.registerOutParameter(1, Types.INTEGER);
			cs.execute();
			age = cs.getInt(1);
			out.println("<h1>函数调用结果</h1><br>");
			out.println("This student's name is " + age + ".<br>");
			cs.close();
			
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 用完后要关闭连接,释放资源
				if (con != null)
					con.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
   %>    
  </body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -