JAVA如何调用SQL存储过程

zqy1975 2013-09-04 08:58:10
过程名,PROC HPLQY @carid varchar(20),@begandate varchar(20),@enddate varchar(20)
as
set nocount on
begin
select carid,lon,lat,gpstime,spe,dir from gpsinfo where carid=@carid and bed=@begandate and endd=@enddate
end
如下JAVA
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.CallableStatement;

Connection con=null;


con=MysqlUtil.getConn();

;
try{
CallableStatement calls =con.prepareCall("{call hplay(?,?,?)}");
calls.setString(1, "carid");
calls.setString(2, "begandate");
calls.setString(2, "enddate");
//calls.execute();

ResultSet rs=calls.executeQuery();



JSONArray carid = new JSONArray();
JSONArray gpstime = new JSONArray();
JSONArray lo = new JSONArray();
JSONArray la = new JSONArray();
JSONArray speed = new JSONArray();
JSONArray age = new JSONArray();
while(rs.next()){
carid.add(rs.getString("sn"));
gpstime.add(rs.getString("gpstime"));
lo.add(rs.getString("newlon"));
la.add(rs.getString("newlat"));
speed.add(rs.getString("spe"));
age.add(rs.getString("dir"));
}

json.put("车ID号", carid);
json.put("时间",gpstime);
json.put("经度",lo);
json.put("纬度",la);
json.put("速度",speed);
json.put("方向",age);
PrintWriter out= response.getWriter();
out.write(json.toString());
} catch (SQLException e)
{
e.printStackTrace();
}
}
这样没有数据出来,谁能帮我改一下


...全文
110 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧