Tomcat 5.5及以上版本配置JNDI数据源指南

需积分: 1 0 下载量 196 浏览量 更新于2024-09-16 收藏 41KB DOC 举报
"Tomcat配置JNDI数据源的方法" 在Java Web开发中,Tomcat作为流行的开源应用服务器,常常被用来部署和运行Web应用程序。JNDI(Java Naming and Directory Interface)是Java平台提供的一种标准接口,用于管理和查找命名和目录服务。在Tomcat中,配置JNDI数据源可以方便地管理数据库连接,提高应用的可扩展性和可维护性。以下是针对Tomcat 5.5及以上版本配置JNDI数据源的详细步骤和方法: 1. 方法1:直接在`<Context>`中配置局部数据源 这种方法适用于单个Web应用的情况,直接在 `%tomcat_home%\conf\context.xml` 文件的 `<Context>` 节点下添加数据源配置。例如: ```xml <Context> <!-- 数据源配置 --> <Resource name="jdbc/yourDS" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="45" username="dbUser" password="dbPassword" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;databaseName=yourDatabase"/> </Context> ``` 配置完成后,应用可以直接通过JNDI查找并使用数据源。 2. 方法2:全局数据源与局部链接 - 全局数据源配置:在 `%tomcat_home%\conf\server.xml` 的 `<GlobalNamingResources>` 节点下添加数据源配置,如方法1所示。 - 局部链接:在 `%tomcat_home%\conf\Catalina\hostname\appname.xml` 或者 `%tomcat_home%\webapps\appname\META-INF\context.xml` 文件的 `<Context>` 中,通过 `<ResourceLink>` 元素链接到全局数据源。 3. 方法3:全局数据源与`server.xml`内的链接 在 `server.xml` 的 `<GlobalNamingResources>` 添加全局数据源后,将 `<Context>` 添加到同一文件中,并使用 `<ResourceLink>` 链接到全局数据源。 4. 方法4:全局数据源与`context.xml`内的链接 全局数据源配置同方法3,但 `<Context>` 放在 `%tomcat_home%\conf\context.xml` 文件内,同样使用 `<ResourceLink>` 进行链接。 5. 方法5:直接在`web.xml`中配置数据源 对于简单的应用,可以在每个Web应用的 `WEB-INF/web.xml` 文件中配置数据源,但这通常不推荐,因为它不能利用Tomcat的全局数据源管理和优化。 在配置JNDI数据源之前,确保已将JDBC驱动程序(如SQL Server的JDBC驱动)放入Tomcat的 `lib` 目录下,以便Tomcat容器能够识别和加载它。配置完成后,Web应用可以通过以下Java代码查找并使用数据源: ```java InitialContext ic = new InitialContext(); DataSource ds = (DataSource) ic.lookup("java:comp/env/jdbc/yourDS"); Connection conn = ds.getConnection(); ``` 这里,`"jdbc/yourDS"` 是在XML配置文件中定义的数据源名称。 配置Tomcat的JNDI数据源提供了灵活的选项,可以根据不同的应用场景和需求选择合适的方法。全局数据源有利于多个应用共享和管理,而局部数据源则更适合独立的应用配置。在实际操作中,务必确保配置正确无误,以避免出现连接问题。
2014-04-25 上传