数据库对象管理4_2
3. 统计某个部门的平均工资、最高工资、最低工资(输出参数)
步骤 1 定义存储过程(1 个输入,3 个输出)
步骤 2 编写 statis2.html
步骤 3 编写 statis2.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8" import ="java.sql.*,oracle.jdbc.OracleTypes"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@localhost:1521:orcl";
String user="scott";
String password="tiger";
Connection con11=DriverManager.getConnection(url,user,password);
Integer deptno =Integer.parseInt(request.getParameter("deptno"));
String sql ="{call p_statis11(?,?,?,?)}";
CallableStatement cst= con11.prepareCall(sql);
cst.setInt(1,deptno);
cst.registerOutParameter(2,OracleTypes.NUMBER);
cst.registerOutParameter(3,OracleTypes.NUMBER);
cst.registerOutParameter(4,OracleTypes.NUMBER);
cst.execute();
double avgsal=cst.getDouble(2);
double maxsal=cst.getDouble(3);
double minsal=cst.getDouble(4);
con11.close();
%>
部门编号;<%=deptno %><br>
平均工资:<%=avgsal %><br>
最高工资:<%=maxsal %><br>
最低工资:<%=minsal %>
</body>
</html>
4. 计算器(加、减、乘运算)
步骤 1 定义存储过程(2个输入,3 个输出)
步骤 2 编写 computer.html
步骤 3 编写 computer.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8" import="java.sql.*,oracle.jdbc.OracleTypes"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String user = "scott";
String password = "tiger";
Connection con11 = DriverManager.getConnection(url, user, password);
Integer x = Integer.parseInt(request.getParameter("x"));
Integer y = Integer.parseInt(request.getParameter("y"));
String sql = "{call p_computer11(?,?,?,?,?)}";
CallableStatement cst = con11.prepareCall(sql);
cst.setInt(1, x);
cst.setInt(2, y);
cst.registerOutParameter(3, OracleTypes.NUMBER);
cst.registerOutParameter(4, OracleTypes.NUMBER);
cst.registerOutParameter(5, OracleTypes.NUMBER);
cst.execute();
double a = cst.getDouble(3);
double b = cst.getDouble(4);
double C = cst.getDouble(5);
con11.close();
%>
x:<%=x%><br>
y:<%=y%><br>
x+y=<%=x + y%><br>
x-y=<%=x - y%><br>
x*y=<%=x * y%><br>
</body>
</html>