public static String[][] getFunctionUser(String functionID) {
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
String[][] returnArray = null;
try {
con = SimpleServlet.osmCP.getConnection();
stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery("select c.userFName || ' ' || c.userLName as userName , c.loginID as userid, c.email from "
+ "sysUserProfile c where c.functionID = '" + functionID + "'");
rs.last();
returnArray = new String[rs.getRow()][3];
rs.beforeFirst();
while (rs.next()) {
returnArray[rs.getRow() - 1][0] = rs.getString("userName");
returnArray[rs.getRow() - 1][1] = rs.getString("userid");
returnArray[rs.getRow() - 1][2] = rs.getString("email");
}
} catch (SQLException e) {
try {
if(con != null)
con.rollback();
} catch (SQLException ex) {
System.out.println("SQLException: " + ex.toString());
}
System.out.println("SQLException: " + e.toString());
e.printStackTrace();
} catch (Exception e) {
try {
if (con != null) con.rollback();
} catch (SQLException ex) {
System.out.println("SQLException: " + ex.toString());
}
System.out.println("SQLException: " + e.toString());
e.printStackTrace();
} finally {
try {
if (rs != null) rs.close();
if (stmt != null) stmt.close();
if (con != null) SimpleServlet.osmCP.free(con);
} catch (Exception ex) {
ex.printStackTrace();
}
}
return returnArray;
}
分享到:
相关推荐
另一个例子展示了如何接收一个ResultSet OUT参数,并将DEPT表的数据填充到这个ResultSet中: ```java public static void getDepartments(ResultSet[] rout) { // 获取默认连接 Connection conn = new Oracle...
`Connection`实例封装了与数据库通信所需的底层网络连接,并提供了多种方法来控制连接状态,如打开、关闭连接,设置连接属性等。 - **`void clearWarnings()`**:此方法用于清除`Connection`对象的所有警告信息,...
- 示例代码展示了如何使用PreparedStatement执行带参数的SQL语句。 #### 九、CallableStatement接口的使用 **9.1 无参无返回值存储过程调用** - 调用无参数且无返回值的存储过程。 **9.2 有参无返回值存储过程...
我们使用 CALLABLESTATEMENT 来调用存储过程,获取游标类型参数的值,并将其转换为 ResultSet 对象。最后,我们使用 while 循环来遍历 ResultSet 对象,并将结果打印出来。 六、结论 本示例展示了如何使用 ...
压缩包中的`DBParamManage`可能是一个工具类,用于管理或处理与数据库交互时的参数设置。这个类可能会包含一些静态方法,方便在项目中统一处理SQL语句的参数。例如,它可以提供一个通用的方法来设置参数,如下所示...
我们使用`registerOutParameter`方法来指定第二个参数是一个输出参数,并设置其数据类型为`VARCHAR`。执行存储过程后,我们可以通过`getString`方法获取输出参数的值。 ### 总结 通过以上两个示例,我们可以看到...
**JDBC教程-使用实例** Java Database Connectivity (JDBC) 是Java编程语言中用于与各种类型数据库交互的一组标准API。这个教程集合了从网络上搜集的资源,旨在帮助学习者掌握JDBC的基础知识和实践技巧。以下是关于...
这个例子中,首先导入了必要的Java I/O类,然后创建File对象指向要读取的文件,接着使用BufferedReader读取文件的每一行内容,并通过`out.println()`在JSP页面上输出。 ### 数据库分页显示 在JSP中,我们可以使用...
本篇将详细介绍如何使用CallableStatement调用Oracle存储过程,并处理返回的结果集(ResultSet)。 一、无返回值的存储过程 在Oracle中,一个无返回值的存储过程可能只执行某些操作,例如插入数据。以下是一个简单...
在本实例"JAVA100例之实例52 使用ODBC连接数据库"中,我们将探讨如何利用Java的JDBC(Java Database Connectivity)API通过ODBC(Open Database Connectivity)桥接来与各种数据库进行交互。ODBC是一种中间件,它...
如果需要绑定参数,可以使用`PreparedStatement`。 6. **处理结果集**: 如果执行的是查询语句,会返回一个`ResultSet`对象,从中可以获取查询结果。 7. **关闭资源**: 完成数据处理后,记得关闭所有的数据库资源,...
这些操作通常涉及调用`getConnection()`方法,创建`PreparedStatement`,设置参数,执行SQL,获取和处理`ResultSet`,最后关闭资源。 此外,为了提高代码的可重用性和维护性,JavaBean通常会被设计成独立的组件,...
代码中会有使用预编译语句的例子,演示如何设置参数并执行。 6. **事务处理**:在数据库编程中,事务是保证数据一致性的关键。Java通过Connection对象提供的commit()和rollback()方法来管理事务。代码可能会包含...
在插入时,我们先将图片转换为二进制数据,然后设置预处理语句的参数: ```cpp std::ifstream img_file("image.jpg", std::ios::binary); std::vector<char> img_data(std::istreambuf_iterator(img_file), {}); ...
接着,我们创建了一个PreparedStatement来执行查询,设置参数值,并通过executeQuery()方法执行SQL。最后,我们遍历ResultSet,打印出查询结果。 这个实例涵盖了JDBC的基本操作,包括加载驱动、建立连接、预编译SQL...
这包括设置数据库驱动类名、URL、用户名和密码等参数。 2. **注册数据源到JNDI**:将配置好的数据源注册到JNDI上下文中,以便后续可以通过JNDI查找。 3. **查找数据源**:在Java代码中,使用Context接口的lookup()...
在创建JdbcRowSet对象时,开发者可以使用默认构造函数来初始化一个新的实例,并根据需要设置属性值。创建JdbcRowSet对象后,通常需要设置连接数据库所需的命令和属性。接着,可以利用PreparedStatement对象设置查询...
首先,将图片转换为字节数组,然后设置PreparedStatement的参数,最后执行插入语句。 8. **关闭资源**:确保在完成数据库操作后,正确关闭ResultSet、Statement和Connection,避免资源泄漏,通常使用try-with-...
本实例将详细介绍如何使用C3P0连接池来连接数据库,以及所需的配置和使用步骤。 首先,我们需要理解数据库连接池的基本概念。数据库连接池是在应用服务器启动时预创建一定数量的数据库连接,然后在应用运行过程中,...
3. 数据转换:`writeXML`方法接收ResultSet作为参数,遍历其中每一行数据,并将其转换为XML元素。每行数据可能对应一个XML元素,元素的属性可能来源于结果集中列的值。 4. 内容编码:为了保持数据的可读性和兼容性,...