SqlServer的连接池怎么那么慢?各位大虾帮帮忙,不尽感激

cnlsq 2004-07-31 09:16:20
我用的是RESIN服务器,配置了JNDI数据源,数据可以操作,但每次十多行的查询还需等上二、三十秒.我的数据源是这样配的:<resource-ref>
<res-ref-name>jdbc/myoracle</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<init-param driver-name="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
<init-param url="jdbc:microsoft:sqlserver://lin:1433;DatabaseName=olddao;SelectMethod=cursor"/>
<init-param user="sa"/>
<init-param password="lin"/>
<init-param max-connections="20"/>
<init-param max-idle-time="30"/>
</resource-ref>
---------------------------------------------------
jsp程序:ResultSet rs=null;
Connection conn=null;
Statement stmt=null;
String url="jdbc:microsoft:sqlserver://fxl:1433;DatabaseName=pubs";
String user="sa";
String password="";
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
conn= DriverManager.getConnection(url,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from sales";
stmt.executeQuery(sql);

}catch (SQLException ex){
out.print("数据库连接错误:" + ex.getMessage());
}
if(conn!=null){
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from sales");
while(rs.next()){

<tr>
<td><rs.getString("stor_id")></td><td><%=rs.getString("ord_num")></td>
</tr>
}
stmt.close();
rs.close();
conn.close();
}
...全文
243 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Saro 2004-08-03
  • 打赏
  • 举报
回复
微软的驱动非常烂,建议不要用。
cnlsq 2004-08-02
  • 打赏
  • 举报
回复
我的天啊,没人知道吗?
cnlsq 2004-08-02
  • 打赏
  • 举报
回复
驱动是从微软的网站下的,不知哪里还有?
lovelymaomao 2004-07-31
  • 打赏
  • 举报
回复
小一点的应用就没毕要用数据源了。。。
GJA106 2004-07-31
  • 打赏
  • 举报
回复
同意楼上所讲。
注意区分:连接池、JDBC、JNDI的区别。这方面的例子也很多。
shangqiao 2004-07-31
  • 打赏
  • 举报
回复
矣!你不是都配置了数据院了嘛,怎么还用DriverManager获得数据库连接,数据源的连接不是这样的呀!
Context ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/myoracle");
Connection con=ds.getConnection;
没用过resin,不知道需补需要提供jndi.properties
shangqiao 2004-07-31
  • 打赏
  • 举报
回复
应该不会比用DriverManager慢吧,假如是的话,那么换个驱动试试,
cnlsq 2004-07-31
  • 打赏
  • 举报
回复
jndi jdbc两种都试过了,还是慢.
jndi 是这样用的DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/myoracle");
按道理jdbc也不会忙啊,是不是sqlServer没打补丁的问提?

62,614

社区成员

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

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