JNDI 数据源:从 Tomcat 迁移到 jBoss/Wildfly
JNDI DataSource: migrating from Tomcat to jBoss/Wildfly
我有一个使用 Tomcat 7、Spring MVC 4.0 和 JPA(Hibernate 实现)的 Web 应用程序。我正在将此应用程序迁移到 jBoss/Wildfly 应用程序服务器。
目前,DataSource 在 Spring 配置文件中使用 JNDI 注入到应用程序中:
<jee:jndi-lookup id="dataSource" jndi-name="jdbc/MY_DB" expected-type="javax.sql.DataSource" />
数据源本身在$CATALINA_HOME/conf/context.xml
中定义如下:
<Context>
<Resource name="jdbc/MY_DB"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/MY_DB?useUnicode=yes&characterEncoding=UTF-8"
username="user1"
password=""
validationQuery="select 1"
removeAbandoned="true"
removeAbandonedTimeout="120"
maxWait="60"
maxActive="20"
maxIdle="10" />
</Context>
如何在 JBoss/Wildfly 中定义这个 JNDI 数据源?
首先,您必须使 JDBC 驱动程序可用于应用程序服务器;然后你可以配置数据源本身。
在 Data Source Configuration in AS 7 and DataSource configuration 中查看更多详细信息
我有一个使用 Tomcat 7、Spring MVC 4.0 和 JPA(Hibernate 实现)的 Web 应用程序。我正在将此应用程序迁移到 jBoss/Wildfly 应用程序服务器。
目前,DataSource 在 Spring 配置文件中使用 JNDI 注入到应用程序中:
<jee:jndi-lookup id="dataSource" jndi-name="jdbc/MY_DB" expected-type="javax.sql.DataSource" />
数据源本身在$CATALINA_HOME/conf/context.xml
中定义如下:
<Context>
<Resource name="jdbc/MY_DB"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/MY_DB?useUnicode=yes&characterEncoding=UTF-8"
username="user1"
password=""
validationQuery="select 1"
removeAbandoned="true"
removeAbandonedTimeout="120"
maxWait="60"
maxActive="20"
maxIdle="10" />
</Context>
如何在 JBoss/Wildfly 中定义这个 JNDI 数据源?
首先,您必须使 JDBC 驱动程序可用于应用程序服务器;然后你可以配置数据源本身。
在 Data Source Configuration in AS 7 and DataSource configuration 中查看更多详细信息