WildFly10.0.0的mysql数据源配置教程

jBoss8和以后的高版本都更名叫做wildFly了,但是网上的中文资料基本还都停留在jBoss4和5的版本上,可能是因为EJB在中国已经好久没用回归开发主流了,jBoss不同版本之间的差别还是挺大的,我下载的是比较新的一个版本WildFly10.0.0,界面和以前的jBoss相差还是挺大的,我找了一些英文资料折腾了好久才配置成功,记录下来供大家参考.

参考资料


[1]Advanced Java EE Development with WildFly

为WildFly配置mysql数据源


此处使用的mysql为5.6.29
使用的jar包为mysql-connector-java-5.1.13-bin.jar,笔者经过测试该jar包可以与该mysql版本配套使用,如果是其他版本的mysql,请自行去官网寻找对应的jar包
按照以下步骤:
第一步:为WildFly添加连接mysql用的jar包依赖:
进入目录%JBOSS_HOME%/modules/mysql/main,该路径中的mysql与main文件夹需要自己创建,之后将mysql-connector-java-5.1.13-bin.jar 放入该文件夹,然后再在该目录下创建文件module.xml ,并将一下代码贴进去:

<module xmlns="urn:jboss:module:1.1" name="mysql" slot="main">
    <resources>
        <resource-root path="mysql-connector-java-5.1.13-bin.jar"/>
    </resources>
    <dependencies>
        <module name="javax.api"/>
    </dependencies>
</module>

如果使用的是其他版本的jar的话,请自行修改resource-root标签的path属性为对应版本的jar包的文件名。

第二步:配置数据源与驱动:
打开文件%JBOSS_HOME%/standalone/configuration/standalone.xml,全文搜索”datasource”,可以找到如下标签:
h2datasoirce
默认的数据源是h2,我们将这个标签修改成如下:

<subsystem xmlns="urn:jboss:domain:datasources:4.0">
        <datasources>
            <datasource jndi-name="java:jboss/datasources/MySQLDS" pool-name="MySQLDS" enabled="true" use-java-context="true">
                <connection-url>jdbc:mysql://localhost:3306/test?characterEncoding=utf-8</connection-url>
                <driver>mysql</driver>
                <pool>
                    <min-pool-size>10</min-pool-size>
                    <max-pool-size>20</max-pool-size>
                    <prefill>true</prefill>
                </pool>
                <security>
                    <user-name>root</user-name>
                    <password>12346</password>
                </security>
            </datasource>
            <drivers>
                <driver name="mysql" module="mysql">
                    <driver-class>com.mysql.jdbc.Driver</driver-class>
                    <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
                </driver>
            </drivers>
        </datasources>
</subsystem>

<connection-url> 标签中的url中的test记得改成你想要连接的数据库的名称,<username><password> 标签也要记得改成自己的数据库账户的用户名与密码

第三步:更改EE子系统的数据源:
刚刚把默认的数据源ExampleDS给删了,但是有的地方还有对它的引用,所以这个时候使用服务器运行使用了JPA的程序时还是会报错,使用%JBOSS_HOME%/bin/standalone.bat启动服务器之后,通过localhost:9990访问控制台,按一下的顺序点击:

Configuration->Subsystem->EE->View->Default Bindings,然后你会看到这里还有一个对ExampleDS的引用,点击Edit,将Datasource改成java:jboss/datasources/MySQLDS,图片说明如下:

点击顺序

点击顺序

根据参考资料[1]给的配置过程,配置到第二步就结束了,但是根据笔者的测试,如果仅仅配置到这里的话,运行带有JPA的项目时会报如下错误:
ExampleDS报错
需要通过第三步消除ExampleDS的引用才可以,参考资料毕竟是基于WildFly8的,有可能8中没有这个引用,这个笔者没有亲自去验证过

个人博客地址

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值