在使用BoneCP的时候发现一个问题,请指点

rabee 发布于 2010/11/14 15:04
阅读 930
收藏 2

     我在使用BoneCP的时候发现一个问题,我更新提交和insert,delete提交没有马上提交到数据库,好像还会有缓存,这个时候马上查询还是旧的数据,等过几秒后查询才是最新的数据,请教各位一下,这个是BoneCP本身设置的问题吗?能马上设置生效吗?谢谢!

加载中
0
红薯
红薯

BoneCP 只是一个连接池,并不会作缓存的处理,你应该检查一下其他方面的可能性。

0
r
rabee

好的,谢谢

0
稀饭

我也有这问题。我现在用的是BoneCP 0.7.0版本。

现在我的case是:用一个线程专门监视某张表的记录数,如果用BoneCP来查找记录数的话,总是获取不到最真实的记录数。而如果改为用DriverManage的连接去查找记录数就能跟数据库的记录数同步。

我的BoneCP代码如下

 private static BoneCP connPool;
 public final static void init() throws Exception{
  Class.forName("com.mysql.jdbc.Driver");
  //设置连接池配置信息              
  BoneCPConfig config = new BoneCPConfig();              //数据库的JDBC URL              
   config.setJdbcUrl("jdbc:mysql://localhost:3306/fly_picture");               //数据库用户名              
  config.setUsername("root");               //数据库用户密码              
  config.setPassword("123456");              //数据库连接池的最小连接数              
  config.setMinConnectionsPerPartition(5);              //数据库连接池的最大连接数              
  config.setMaxConnectionsPerPartition(10);              //              
   config.setPartitionCount(1);              //设置数据库连接池              
  connPool = new BoneCP(config); 
 }
 public final static Connection getConnection() throws SQLException{
  
  return connPool.getConnection();
 }

DriverManage的代表如下:

public final static void init() throws Exception{
        Class.forName("com.mysql.jdbc.Driver");
}
public final static Connection getConnection() throws SQLException{
		
        return DriverManager.getConnection("jdbc:mysql://localhost:3306/fly_picture", "root", "123456");
}

请高手帮忙看下,谢谢

0
roamlog
roamlog
我刚尝试使用 BoneCP,也碰到类似问题,目前不清楚怎么解决
0
祝涛
祝涛

感觉数据更新有延时

如果hibernate立即flush就没问题了,是不是和提交的设置有关,这个在那里设置

返回顶部
顶部