Java Tomcat:context.xml和web.xml为jndi资源配置
我已经在网上浏览了几乎所有与web.xml/context.xml相关的问题,但是没有一个地方能对下面的问题给出足够清晰的答案。 表示web.xml中的resource ref标记等同于context.xml中的resource标记。 表示web.xml中的resource ref标记在context.xml中查找resource标记。现在这两个听起来很混乱,因为我提到的两个链接都是Tomcat文档链接,而且仍然有看似矛盾的语句。任何澄清都会非常有用。资源标签定义了资源,可以放在许多xml文件中,这些文件在很大程度上取决于部署首选项。首先,我将context.xml放在web应用程序的META-INF文件夹中。此目录在web应用程序中与web-INF文件夹处于同一级别,例如:- META-INF/context.xmlJava Tomcat:context.xml和web.xml为jndi资源配置,java,tomcat,jakarta-ee,tomcat7,tomcat8,Java,Tomcat,Jakarta Ee,Tomcat7,Tomcat8,我已经在网上浏览了几乎所有与web.xml/context.xml相关的问题,但是没有一个地方能对下面的问题给出足够清晰的答案。 表示web.xml中的resource ref标记等同于context.xml中的resource标记。 表示web.xml中的resource ref标记在context.xml中查找resource标记。现在这两个听起来很混乱,因为我提到的两个链接都是Tomcat文档链接,而且仍然有看似矛盾的语句。任何澄清都会非常有用。资源标签定义了资源,可以放在许多xml文件中
<Context>
<Resource name="jdbc/TestDB" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/testdb"
username="dbuser"
password="dbpassword"
maxTotal="20" maxIdle="10" maxWaitMillis="-1"/>
</Context>
以上内容使资源可用
resource ref标记用于引用资源,使其可用于应用程序。这可以放在web.xml文件中
WEB-INF/WEB.xml
<web-app>
<!--- snipped -->
<resource-ref>
<description>Test DB Connection</description>
<res-ref-name>jdbc/TestDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
测试数据库连接
jdbc/TestDB
javax.sql.DataSource
容器
这两者都可以通过其他方式进行配置。我通常会选择这样的东西,然后涉猎。谢谢克里夫,但这并不能让我清楚。您只重申了我提供的第二个链接中已经提到的内容。我希望澄清两个链接中提到的相互矛盾的声明之间的混淆。