java调用存储过程(jdbc & hibernate)
一、JDBC调用存储过程
creat proc proc_select
@pid varchar(20)
@address varchar(20) output
as
select @address=address from userinfo where pid=@pid
go
用java调用:
class.forName(\"sun.jdbc.odbc.JdbcOdbcDriver\"); //加载驱动
Connection con=DriverManager.getConnection(\"Jdbc:Odbc:test\",\"sa\",\"\"); //获得连接
String call=\"{call proc_select(?,?)};\" //调用语句
CallableStatement proc=con.preparecall(call); //调用存储过程
proc.setString(1,\"12345678\"); //给输入参数传值
proc.registerOutParameter(2,Type.varchar); //声明输出参数是什么类型的
proc.execute(); //执行
String address=proc.getString(2); //获得输出参数
java调用存储过程
存储过程可以有返回值,所以CallableStatement类有类似getResultSet这样的方法来获取返回值。当存储过程返回一个值时,你必须使用registerOutParameter方法告诉JDBC驱动器该值的SQL类型是什么。你也必须调整存储过程调用来指示该过程返回一个值。
下面接着上面的例子。这次我们查询Dylan Thomas逝世时的年龄。这次的存储过程使用PostgreSQL的pl/pgsql:
create function snuffed_it_when (VARCHAR) returns integer ’declare
poet_id NUMBER;
poet_age NUMBER;
begin
--first get the id associated with the poet.
SELECT id INTO poet_id from poets WHERE name = $1;
--get and return the age.
SELECT age INTO poet_age from deaths WHERE mort_id = poet_id; [Page]
return age;
end;’ language ’pl/pgsql’;
另外,注意pl/pgsql参数名通过Unix和DOS脚本的$n语法引用。同时,也注意嵌入的注释,这是和Java代码相比的另一个优越性。在Java中写这样的注释当然是可以的,但是看起来很凌乱,并且和SQL语句脱节,必须嵌入到Java String中。
下面是调用这个存储过程的Java代码:
connection.setAutoCommit(false);
CallableStatement proc = connection.prepareCall(\"{ ? = call snuffed_it_when(?) }\");
proc.registerOutParameter(1, Types.INTEGER);
proc.setString(2, poetName);
cs.execute();
int ag
相关文档:
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
......
根据JDK5的新特性,用For循环Map,例如循环Map的Key
Java代码
for(String dataKey : paraMap.keySet()) {
System.out.println(dataKey ); &nbs ......
1,Java3D 作为sun公司较早推出的一项3d技术,是一种高度封装的api,构建在opengl和direct3d之上,可以说是最有名的java的3d技术。由于种种原因(api设计,面向的用户不明确),java3d一直没有办法流行,不久前java3d的团队宣布暂停对java3d新功能的开发,转而为JavaFX开发3d 渲染引擎。同时sun的另一个项目 project wonder ......
在这里介绍两种方法生成jar,第一种是用Eclpise的Export功能。在要打包的项目上击右键,选择Export,在窗口中选择Java里的JAR file。Next后的窗口中已经自动选好了要打包的项目,用户可以点击加号查看项目里被打包的内容。在下面的JAR file里设置你打包生成jar文件的输出目录,下一步在出现的窗口中选择Use existin ......