存储过程(一)后台使用jdbc集成
来源:互联网 发布:javascript的面相对象 编辑:程序博客网 时间:2024/06/13 18:13
刚开始使用的jdbc集成的,mybatis集成相对非常简单,这里记录一下
一、main方法
Class.forName("com.mysql.jdbc.Driver") ;
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "admin");
CallableStatement call = con.prepareCall("{call res(?,?)}"); //连接存储过程,第一个是输入参数,第二个输出参数
call.setInt(1, 10);//1是占位符的顺序,10是用户输入的参数
call.registerOutParameter(2, Types.INTEGER);//第二个是输出参数,输出的格式是Integer
call.execute(); //执行
int i=call.getInt(2);//占位符赋值
system.print(i);//输出
二、sql语句
定义参数:in age int,out c int //注意这里,如果是java里面要用到out参数,那么定义的时候不能加引号,navicat自动生成引号的
主体:
BEGIN
DECLARE v1 int; //定义参数,局部都要使用的变量set v1=age; //输入参数赋值到局部变量insert into product(age) values(v1);//语句select count(*) from product into c;//into c 就是给输出参数赋值
END
eg:后来就不用这么麻烦了,上面是刚学的时候为了区分变量
insert into product(age) values(_age); //_age就是in参数
set _count=1; //_count 是out参数,直接赋值就可以了
select _count; //存储过程测试用,结果集会显示,如果是java用,那么上一步的set就可以得到_count了
三、输出集合 lis
begin
select * from product
end
没有参数
main方法:
String sql="{call lis()}";
CallableStatement call=con.prepareCall(sql);
boolean list=call.execute();
while(list){ //第一个循环是总体的循环
ResultSet rs=call.getResultSet();
while(rs.next()){ //第二个循环是rs的循环
int id=rs.getInt(1);
String name=rs.getString(2);
int age=rs.getInt(3);
//System.out.println(id+"\t"+name+"\t"+age);
}
list =call.getMoreResults();
} 0 0
- 存储过程(一)后台使用jdbc集成
- jdbc使用存储过程
- 一JDBC调用存储过程
- JDBC中使用存储过程
- 使用JDBC调用存储过程
- 使用JDBC调用存储过程
- 使用JDBC调用存储过程
- 使用JDBC调用存储过程
- 使用JDBC操作存储过程
- 使用jdbc调用存储过程
- 使用JDBC调用存储过程
- JDBC中使用存储过程
- 使用JDBC的存储过程
- 使用JDBC调用存储过程
- 存储过程(四)查询,使用的是jdbc
- [NHibernate]存储过程的使用(一)
- 第十九课(一) 使用存储过程
- JDBC调用存储过程,以及存储过程 事务的使用.....
- ECMAScript 2015 (ES6) in Node.js(译)
- php strtotime 时间加减函数
- win10 uwp App-to-app communication 应用通信
- “代理服务器拒绝连接“问题
- Java网络编程之JavaMail发送邮件和接受邮件
- 存储过程(一)后台使用jdbc集成
- OA项目实战学习(1)
- hdu 2594 Simpsons’ Hidden Talents
- 20-30岁,你拿这十年做什么(读书摘录)
- UDP封装基础学习记录
- 存储过程(二) 逻辑判断
- android 用gson解析遍历json数据
- 保存图片
- HTTP深入浅出 http请求