社区
Java SE
帖子详情
高手请进!
armyshu
2002-02-07 11:24:02
在javabean 的sql语句中,我用到了一个当前时间的问题,(数据库是INFORMIX),我将时间格式转化为(yyyy/MM/dd)的形式,结果发现执行后数据库连接并没有释放,(我用fianlly显示的释放连接的),而且程序也没有报任何错误,更让人不懂的是,居然从数据库中取出了记录,但连接就是不释放????这样不久之后,weblogic就DOWN机了,(这个BEAN 的使用频率相当高。)请高手帮忙解决!?
...全文
75
13
打赏
收藏
高手请进!
在javabean 的sql语句中,我用到了一个当前时间的问题,(数据库是INFORMIX),我将时间格式转化为(yyyy/MM/dd)的形式,结果发现执行后数据库连接并没有释放,(我用fianlly显示的释放连接的),而且程序也没有报任何错误,更让人不懂的是,居然从数据库中取出了记录,但连接就是不释放????这样不久之后,weblogic就DOWN机了,(这个BEAN 的使用频率相当高。)请高手帮忙解决!?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
remote_roamer
2002-02-08
打赏
举报
回复
建议使用显式的关闭conn.不要用finally.这个和垃圾回收有关,不一定会立即执行.同时建议先关闭resultset
BugHunterPro
2002-02-08
打赏
举报
回复
"好象是说sql的date有问题"你就不能说明白点吗?
把异常贴出来得了。。我这句你查查看我说了多少次了
armyshu
2002-02-08
打赏
举报
回复
郁闷,怎么没人响应了,看来我大年都不能睡好觉了,因为必须给银行生产环境重起SERVER???!!
sharetop
2002-02-07
打赏
举报
回复
你这段代码根本就没有释放connection呀???什么意思???
armyshu
2002-02-07
打赏
举报
回复
/**Process the HTTP Get request*/
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String type=request.getParameter("RType");
String perd=request.getParameter("RPerd");
DataOutputStream out=new DataOutputStream(response.getOutputStream());
//ObjectOutputStream out1=new ObjectOutputStream(response.getOutputStream());
try{
SqlAccess conn=new SqlAccess();
//取当前时间
java.util.Date now=new java.util.Date();
SimpleDateFormat sd=new SimpleDateFormat("yyyy/MM/dd");
String nowStr=sd.format(now);
//只查询已启用的利率
String sqlStr="SELECT S_Serial,C_Rate,I_Deadline,F_Rate FROM P_RATE";
sqlStr+=" WHERE d_begindate<date('"+nowStr+"') AND (d_enddate IS NULL OR d_enddate>date('"+nowStr+"'))";
if(type!=null&&perd!=null)
sqlStr+=" AND C_RateType="+type+" AND I_Deadlint<"+perd;
sqlStr+=" ORDER BY I_Deadline";
//-----
//System.out.println(sqlStr);
//-----
ResultSet rst=conn.queryselect(sqlStr);
if(rst!=null){
//写查询成功标志
out.writeBoolean(true);
while(rst.next()){
out.writeUTF(rst.getString("S_Serial"));
//-----
//System.out.println("S_Serial:"+rst.getString("S_Serial"));
//-----
out.writeUTF(rst.getString("C_Rate"));
//-----
//System.out.println("C_RateType:"+rst.getString("C_Rate"));
//-----
out.writeInt(rst.getInt("I_Deadline"));
//-----
//System.out.println("I_ Deadline:"+rst.getString("I_Deadline"));
//-----
out.writeFloat(rst.getFloat("F_Rate"));
//-----
//System.out.println("F_Rate:"+rst.getString("F_Rate"));
//-----
}
}
else
out.writeBoolean(false);
out.close();
}catch(SQLException exp){
exp.printStackTrace();
out.writeBoolean(false);
out.close();
}
}
请看原玛,多多指教!
zha1977
2002-02-07
打赏
举报
回复
最好把代码贴出来
xuxb488
2002-02-07
打赏
举报
回复
关注.....
armyshu
2002-02-07
打赏
举报
回复
大哥,现在还是 老毛病,不释放连接!
armyshu
2002-02-07
打赏
举报
回复
嘿嘿,我又按你的方法做了一次,发现有打印东西出来,好象是说sql的date有问题,正在找?多谢!
armyshu
2002-02-07
打赏
举报
回复
哈哈,我尝试过了,控制台并没有任何打印出来的消息,也就是说,在执行到查询结束后,程序就不执行了,真的很奇怪!而且绝对没有别的任何错误!
BugHunterPro
2002-02-07
打赏
举报
回复
你试试看有没有提示输出
BugHunterPro
2002-02-07
打赏
举报
回复
finally{
System.out.println("正在释放连接");
try{
conn.close();
}catch(SQLException e){
System.out.println("连接释放时出现问题:" + e);
}
conn=null;
}
armyshu
2002-02-07
打赏
举报
回复
对不起哟,
finally{
conn.close;
conn=null;
}是我后来加进去的,但是还是有这样的问题啊??不明白!
windbg指令-!drvobj
本文介绍如何使用Windbg调试Windows驱动程序,包括使用!drvobj、!devobj和!devstack命令获取驱动及其设备对象信息的方法,以及如何设置断点。
mysql配置my.cnf中!include和!includedir的作用
本文详细解释了MySQL配置文件my.cnf的模块化管理方法及其重要性,特别是如何使用!include和!includedir指令来引入其他配置文件。
SASS系列之:!global VS !deafult
本文通过生动的例子解释了Sass中的变量作用域概念,并详细介绍了!default与!global两个特性如何影响变量的覆盖与继承行为。
hdu1087Super Jumping! Jumping! Jumping!(最大递增序列和)
本文深入探讨了流行的游戏棋类活动超级跳!跳!跳!HDU的规则与策略,通过解析题意并提供代码实现,帮助读者理解如何在给定棋子列表中寻找最大得分的递增序列。
全新的 Discuz! Q 来了!
Discuz!Q, 私域流量经营新工具,由知名开源社区软件Discuz!团队推出,定位为知识付费、粉丝圈子、社交电商三大场景解决方案。采用前后分离架构,支持微信生态和腾讯云,提供开源免费、多端联动、轻量化经营等特性,助力内容创业者高效变现。
Java SE
62,622
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章