Em um posts anterior aprendemos como criar uma conexão via JBoss e um banco MSQL Server usando o JTDS Driver e Microsoft JDBC Driver. Neste post falaremos do MySQL Connector JDBC Driver. Para configurar ele no JBoss seguiremos alguns passos similares aos outros posts:
1. Baixe o driver no site do MySQL.
2. Extraia o arquivo recem baixado e localize o arquivo mysql-connector-java-5.1.38-bin.jar.
3. No seu JBOSS_HOME crie diretórios respeitando a seguinte hierarquia “modules\com\mysql\main”. Dentro desse diretório coloque o arquivo recém baixado mysql-connector-java-5.1.38-bin.jar e crie um novo arquivo chamado module.xml com o seguinte conteúdo:
<!--?xml version="1.0" encoding="UTF-8"?--> <module xmlns="urn:jboss:module:1.1" name="com.mysql"> <resources> <resource-root path="mysql-connector-java-5.1.38-bin.jar"> </resource-root></resources> <dependencies> <module name="javax.api"> <module name="javax.transaction.api"> </module></module></dependencies> </module>
3. Agora precisamos modificar nosso standalone.xml adicionando as configurações abaixo à seção de datasources. Diferente dos posts anteriores adicionei novas configurações para que você saiba que pode definir novos parâmetros além do básico. No geral podemos definir parâmetros para o pool de conexões, validações, cache dentre outros. Essas configurações são padrão e com exceção das configurações de validação se aplicam à maioria dos bancos de dados.
<datasource jndi-name="java:jboss/datasources/SeuDatabase" pool-name="SeuDatabase" enabled="true" use-java-context="true" use-ccm="true"> <connection-url>jdbc:mysql://localhost:3306/SeuDatabase</connection-url> <driver>mysql</driver> <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation> <!-- Configuração opcional pra definir os parâmetros do pool de conexões --> <pool> <min-pool-size>10</min-pool-size> <max-pool-size>100</max-pool-size> <prefill>true</prefill> </pool> <security> <user-name>seu_usuario</user-name> <password>sua_senha</password> </security> <!-- Configuração opcional para validação de conexões e tratamento de exceptions --> <validation> <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"> <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"> </exception-sorter></valid-connection-checker></validation> <!-- Configuração opcional com os parâmetros de de cache --> <statement> <prepared-statement-cache-size>100</prepared-statement-cache-size> <share-prepared-statements>true</share-prepared-statements> </statement> </datasource>
E na seção drivers:
<driver name="mysql" module="com.mysql"> <datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlDataSource</datasource-class> </driver>
O resultado final deve ser similar a configuração abaixo:
<subsystem xmlns="urn:jboss:domain:datasources:1.1"> <datasources> <datasource jndi-name="java:jboss/datasources/SeuDatabase" pool-name="SeuDatabase" enabled="true" use-java-context="true" use-ccm="true"> <connection-url>jdbc:mysql://localhost:3306/SeuDatabase</connection-url> <driver>mysql</driver> <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation> <!-- Configuração opcional pra definir os parâmetros do pool de conexões --> <pool> <min-pool-size>10</min-pool-size> <max-pool-size>100</max-pool-size> <prefill>true</prefill> </pool> <security> <user-name>seu_usuario</user-name> <password>sua_senha</password> </security> <!-- Configuração opcional para validação de conexões e tratamento de exceptions --> <validation> <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"> <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"> </exception-sorter></valid-connection-checker></validation> <!-- Configuração opcional com os parâmetros de de cache --> <statement> <prepared-statement-cache-size>100</prepared-statement-cache-size> <share-prepared-statements>true</share-prepared-statements> </statement> </datasource> <drivers> <driver name="mysql" module="com.mysql"> <datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlDataSource</datasource-class> </driver> </drivers> </datasources> </subsystem>
Complementando as postagens sobre os datasources MSQL Server dessa vez aprendemos a criar uma conexão com uma base MySQL . Mais uma vez para soluções mais complexas use o Google e sua criatividade.
Treinamentos relacionados com este post