Tomcat创建jndi
时间: 2024-09-27 14:04:31 浏览: 11
Tomcat是Java EE应用服务器中最常用的Web容器,它支持Java Naming and Directory Interface (JNDI)命名服务,用于在应用程序之间共享资源。要在Tomcat中创建JNDI名称,你需要按照以下步骤操作:
1. **配置JNDI名称**: 首先,在`<Context>`元素中定义资源引用,例如在`server.xml`文件的`<Engine>`或`<Host>`标签下添加 `<Resource>`标签。比如,如果你想要创建一个数据库连接池,可以这样配置:
```xml
<Resource name="jdbc/myDB" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/mydb"
username="username"
password="password"/>
```
这里的"name"就是你在JNDI中的名字。
2. **部署应用**: 当你部署应用到Tomcat时,这个JNDI资源会自动注册到服务器的JNDI命名空间中。在应用的`WEB-INF/web.xml`文件里,你可以通过`<resource-ref>`标签引用这个资源:
```xml
<resource-ref>
<description>My JNDI DataSource</description>
<res-ref-name>jdbc/myDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
```
3. **访问JNDI资源**: 在应用代码中,你可以通过`java.naming.Context`获取到这个JNDI资源,并根据需要使用。例如,使用`InitialContext`初始化并获取DataSource:
```java
Context initialContext = new InitialContext();
DataSource dataSource = (DataSource) initialContext.lookup("java:comp/env/jdbc/myDB");
```