activemq 5.13.2 jdbc 数据库持久化 异常 找不到驱动程序
博客专区 > Atom_me 的博客 > 博客详情
activemq 5.13.2 jdbc 数据库持久化 异常 找不到驱动程序
Atom_me 发表于2年前
activemq 5.13.2 jdbc 数据库持久化 异常 找不到驱动程序
  • 发表于 2年前
  • 阅读 468
  • 收藏 3
  • 点赞 1
  • 评论 3

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: activemq jdbc 数据库持久化 异常 找不到驱动程序 Caused by: java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource

配置activemq 5.13.2 数据库持久化的时候,首先将mysql数据库驱动拷贝到activemq 的lib目录下,

然后配置activemq.xml 文件

增加两个配置点:

    1,

        <persistenceAdapter>           

 <jdbcPersistenceAdapter  dataSource="#mysql" createTablesOnStartup="false"/>

        </persistenceAdapter>

dataSource:引用的数据源

createTablesOnStartup: 表示启动的是自动创建三张表

2,

<!-- jdbc 数据库持久化 mysql配置  -->

<bean id="mysql" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">

<property name="driverClassName" value="com.mysql.jdbc.Driver"/>

<property name="url" value="jdbc:mysql://localhost:3306/test_mq?relaxAutoCommit=true"/>

<property name="username" value="root"/>

<property name="password" value="root"/>

<property name="maxTotal" value="200"/>

<property name="poolPreparedStatements" value="true"/>

    </bean>

这个地方连接池使用的是org.apache.commons.dbcp2.BasicDataSource的连接池 ,

因为activemq5.13.2   自身提供的是commons-dbcp2-2.1.1.jar 这个版本的jar包,

如果填写(使用)org.apache.commons.dbcp.BasicDataSource,就会提示找不到类,因为org.apache.commons.dbcp.BasicDataSource 在dbcp1.x中 不在dbcp2.x中。

 

由于commons-dbcp所用的连接池出现版本升级,因此commons-dbcp2中的数据库池连接配置也发生了变化

 

由于commons-dbcp升级到commons-dbcp2 数据库连接池的连接配置也发生了变化(属性名变了),

版本1.x中最大活动连接数属性名称为:maxActive

版本2.x中最大活动连接数属性名称为:maxTotal

 

配置完成后,你在重新启动数据库就会从新创建三张表。

 

参考地址:http://activemq.2283324.n4.nabble.com/ActiveMQ-JDBC-persistence-with-MSSql-td4701883.html

 

共有 人打赏支持
粉丝 4
博文 58
码字总数 6542
评论 (3)
weir2016
好蛋疼
Atom_me

引用来自“weir2016”的评论

好蛋疼
为啥会蛋疼?
杨延庆
需要补充一点,对数据库的连接最好不要连旧的版本的ActiveMQ创建的持久化数据库,我用5.13.3版本连接以后,
启动时抛出以下异常:
java.lang.IllegalStateException: LifecycleProcessor not initialized - call 'refresh' before invoking lifecycle methods via the context: org.apache.activemq.xbean.XBeanBrokerFactory$1@5d321a63: startup date [Wed Jun 29 10:43:55 CST 2016]; root of context hierarchy
后来我自己新建了一个activemq数据库,再启动时就不会抛这个异常了,可能版本不一样,建立的数据库表格式也有差异。
×
Atom_me
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: