ibatis 如果在配置文件配置了连接池 在代码中还需要写代码生成数据源吗?????

Brokenfango 2008-10-17 02:07:21
Reader r = Resources.getResourceAsReader("SqlMapConfig.xml");
SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(r);
以上代码会不会生成数据库连接池??

数据源需要不需要写代码来产生??
...全文
321 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
java__king 2008-10-18
  • 打赏
  • 举报
回复
conn = ds.getConnection();

hl_ghost 2008-10-17
  • 打赏
  • 举报
回复
ds = sqlMap.getDataSource();
conn = ds.getConnection();


那本书上看到的,上面代码的做用是?

第一个代码是误人子弟,ds = sqlMap.getDataSource();
conn = ds.getConnection();
conn.close();
这三句屁用没有,浪费资源。

第二个是通常的做法。
Brokenfango 2008-10-17
  • 打赏
  • 举报
回复


(一)
ds = sqlMap.getDataSource();
conn = ds.getConnection();
r = Resources.getResourceAsReader("SqlMapConfig.xml");
sqlMap = SqlMapClientBuilder.buildSqlMapClient(r);
sqlMap.XXX();//增删查改
conn.close();

(二)
r = Resources.getResourceAsReader("SqlMapConfig.xml");
sqlMap = SqlMapClientBuilder.buildSqlMapClient(r);
sqlMap.XXX();//增删查改


哪个对数据库的压力会比较小??还是没什么区别??
hl_ghost 2008-10-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 Brokenfango 的回复:]
数据库连接会自动关闭么?
[/Quote]

不会,会放到池中,谁用给谁,用完还他
Begin_Game 2008-10-17
  • 打赏
  • 举报
回复
配置了连接池,表示ibatis在执行操作时,会直接从池中拿出连接来使用,用完后连接会自动返回返回池中,等待下次程序使用。当然你也可以在代码中写一个新的连接,但这个新连接要注意关闭它。使用新连接的时候跟连接池连接就没关系了。
ouyangxiaokang6 2008-10-17
  • 打赏
  • 举报
回复
只要配置好了,就不用了。
Brokenfango 2008-10-17
  • 打赏
  • 举报
回复
数据库连接会自动关闭么?
hl_ghost 2008-10-17
  • 打赏
  • 举报
回复
只接用sqlMap执行更删改查就OK了。那些细节不需要关心
Brokenfango 2008-10-17
  • 打赏
  • 举报
回复
数据库连接池已经在配置文件配置了

我的意思是配置文件配置了连接池之后还需要不需要写代码来生成?
Reader r = Resources.getResourceAsReader("SqlMapConfig.xml");
SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(r);
以上代码会生成连接池么?

ai5173609 2008-10-17
  • 打赏
  • 举报
回复
在SqlMapConfig.xml配置,里面写
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@192.168.0.112:1521:database"/>
<property name="JDBC.Username" value="user"/>
<property name="JDBC.Password" value="password"/>
<property name="Pool.MaximumActiveConnections" value="10"/>
<property name="Pool.MaximumIdleConnections" value="5"/>
<property name="Pool.MaximumCheckoutTime" value="120000"/>
<property name="Pool.TimeToWait" value="500"/>
<property name="Pool.PingQuery" value="select 1 from ACCOUNT"/>
<property name="Pool.PingEnabled" value="false"/>
<property name="Pool.PingConnectionsOlderThan" value="1"/>
<property name="Pool.PingConnectionsNotUsedFor" value="1"/>
</dataSource>

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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