JFinal 调用存储过程的步骤

目录存储过程创建储存过程JFinal调用新建实现ICallback的类调用

存储过程

存储过程(stored procedure)是一组为了完成特定功能的SQL语句集合,经编译后存储在服务器端的数据库中,利用存储过程可以加速SQL语句的执行。存储过程既可以有参数有返回值,且有多个返回值。但是它与函数不同,存储过程的返回值只是指明执行是否成功,且不能像函数那样被直接调用,只能利用 execute 来执行存储过程。

创建储存过程

无参数,无返回值

--创建名为 PERSON_PROC 的无参数、无返回值的存储过程create procedure PERSON_PROCasbegin --往person表插入一条数据 insert into person(name) values ('chenjy')end--执行存储过程execute PERSON_PROC

有参数,有返回值

--创建名为 PERSON_PROC2 的有输入参数、有返回值的存储过程create procedure PERSON_PROC2@Name nvarchar(10)='chenjy'  --设置默认值asbegin  insert into person(name) values (@Name)    select * from person  end--执行名为 PERSON_PROC2 的有输入参数的存储过程execute PERSON_PROC2 'chenmm'

JFinal调用

新建实现ICallback的类

import java.sql.CallableStatement;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.util.List;import com.jfinal.plugin.activerecord.DbKit;import com.jfinal.plugin.activerecord.ICallback;import com.jfinal.plugin.activerecord.Record;import com.jfinal.plugin.activerecord.RecordBuilder;public class TestCallBack implements ICallback {  public String name = "chenjy";  public ResultSet rs = null;CallableStatement proc = null;public List<Record> result = null;@Overridepublic Object call(Connection conn) throws SQLException {try { // 调用存储过程 PERSON_PROC2proc = conn.prepareCall("{call dbo.PERSON_PROC2(?)}");   // 输入参数nameproc.setString(1, name);  rs = proc.executeQuery();// 返回值result = RecordBuilder.build(DbKit.getConfig(), rs);proc.close();} catch (SQLException e) {System.out.println(e.toString());}return result;}}

调用

   TestCallBack cb = new TestCallBack();   // 输入参数 name=chenjynew   cb.name = "chenjynew";   Db.execute(cb);   // 打印返回值   System.out.print(cb.result.toString());

调用成功添加了一条chenjynew并检索出所有的数据

以上就是JFinal 调用存储过程的步骤的详细内容,更多关于JFinal 调用存储过程的资料请关注其它相关文章!

你的脸是为了呈现上帝赐给人类最贵重的礼物–微笑,一定要成为你工作最大的资产。

JFinal 调用存储过程的步骤

相关文章:

你感兴趣的文章:

标签云: