/**调用存储过程
存储过程
create or replace procedure getselect(arg in varchar2,out_result out sys_refcursor)
is
begin
open out_result for select * from user_tab_cols a where a.table_name = arg;
end getselect;
*/
public void getCallableStatementCallback(){
ApplicationContext context = new FileSystemXmlApplicationContext(
"src/database_config.xml");
JdbcTemplate jt = new JdbcTemplate((DataSource) context.getBean("oracleDataSourceTest"));
// 测试用的方法
List relist = (List) jt.execute("call getselect(?,?)",
new CallableStatementCallback() {
public Object doInCallableStatement(CallableStatement cs)
throws SQLException, DataAccessException {
cs.setString(1, "ACCT");
cs.registerOutParameter(2,oracle.jdbc.driver.OracleTypes.CURSOR);
cs.execute();
ResultSet rs = (ResultSet) cs.getObject(2);
List result = new ArrayList();
while (rs != null && rs.next()) {
Map map = new HashMap();
map.put("TABLE_NAME", rs.getString(1));
map.put("COLUMN_NAME", rs.getString(2));
result.add(map);
}
rs.close();
return result; // 返回类型决定execute返回类型
}
});
for (int i = 0; i < relist.size(); i++) {
Map rmap = (Map) relist.get(i);
System.out.println(rmap.get("TABLE_NAME") + " "+ rmap.get("COLUMN_NAME"));
}
}
分享到:
相关推荐
除此之外,文件可能还会涵盖Oracle的高级特性,如存储过程、触发器、游标、PL/SQL块的使用,以及如何在Spring框架中调用这些特性。 将Spring与Oracle结合使用时,开发者通常会利用Spring的JdbcTemplate或...
使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall使用的参数 11.5.7. 如何定义SqlParameters 11.5.8. 使用SimpleJdbcCall调用内置函数 11.5.9. 使用SimpleJdbcCall返回的ResultSet/REF Cursor 11.6...
SSH框架是Java Web开发中广泛使用的三大开源框架的组合,包括Struts2、Hibernate3.2和Spring2.5。这个框架的集成为开发者提供了强大的MVC(模型-视图-控制器)架构支持,用于构建高效、可维护的Web应用程序。在本...
使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall使用的参数 11.5.7. 如何定义SqlParameters 11.5.8. 使用SimpleJdbcCall调用内置函数 11.5.9. 使用SimpleJdbcCall返回的ResultSet/REF Cursor 11.6...
12.2.3使用RequestPostProcessor在Spring MVC测试中以用户身份运行 106 作为用户在Spring MVC测试中使用注释运行 108 12.2.4测试HTTP基本认证 109 12.3 SecurityMockMvcRequestBuilders 109 12.3.1测试基于表单的...
在本项目中,Spring 2.5版本被使用,这个版本引入了`<bean>`标签进行对象配置,而不是使用注解(Annotation)。这意味着你需要在XML配置文件中定义Bean,然后Spring容器会根据这些配置创建和管理对象。 **Struts...
它包含了SQL语句执行、游标操作、事务管理、存储过程调用等功能。例如,`oci_connect()`函数用于建立数据库连接,`oci_execute()`执行SQL语句,`oci_fetch_array()`获取查询结果行作为数组。 这些资料为开发者提供...
- **Spring2.5+jdbc、Spring2.5+hibernate**:不同的技术组合,用于构建不同类型的系统。 5. **项目经验**: - 绩效考核系统:涉及部门、员工、指标类别的维护,使用MVC模式,Struts + Hibernate+Spring框架,...
- **集成编程环境**:STS 2.5(Eclipse + Spring Tools),此版本集成了Spring开发所需的工具和支持。 - **JavaScript**:Spket 1.68(插件),增强JavaScript的编辑体验。 - **SVN插件**:SubEclipse(插件),支持...
- **Framework**: Spring 2.5 + SpringPortletMVC + Hibernate 3 - **Portal Server**: Liferay Portal 5.2.3 - **Database**: Oracle 10G #### 三、工程结构与代码示例 ##### 1. 工程结构搭建 工程分为`source`...
在Java编程中,连接数据库以实现用户登录功能是一项基础但重要的任务。这通常涉及到数据库的交互,如查询、验证用户凭据等。本教程将详细解释如何使用Java连接Oracle数据库来实现这一功能。 首先,我们需要了解Java...
为了存储用户提交的数据,我们需要在MySQL数据库中创建一张表`t_employee`: ```sql CREATE TABLE t_employee ( id INTEGER NOT NULL PRIMARY KEY, name VARCHAR(20), age VARCHAR(20), sex VARCHAR(20), tel ...
* 实时分析:基于 spark streaming,实时批量从 kafka 消费数据并将分析后结果按业务类型写入 hbase 和 Oracle 中。 * 离线分析:基于 Spark sql,定时分析并将分析后结果按业务类型写入 Hbase 和 Oracle 中。 ...
Dao(Data Access Object)层处理与数据库的交互,封装了SQL查询和存储过程。 2.6.1 一个数据库只有一个 Dao 对于单数据库应用,通常只有一个Dao,负责所有数据库操作。 2.6.2 数据库 dialect Dialect用于处理...
- **Spring EL**:在流程定义中使用Spring Expression Language (SpEL)。 - **集成**:通过配置使SpEL与Activiti无缝集成。 #### 六、总结 通过上述内容可以看出,Activiti 6.0官方文档详细介绍了如何从零开始搭建...
- **SPRING集成和DEMO**: 如何在Spring项目中使用BeetSql。 - **SPRINGBOOT集成**: Spring Boot项目的集成指南。 - **SPRINGBOOT集成多数据源**: 多数据源的配置示例。 - **JFINAL集成和DEMO**: JFinal框架下的集成...