2017-04-26 77 views
0

我一直在网上浏览几乎所有web.xml/context.xml相关的问题,但是我没有找到足够明确的答案来解决我的下一个问题。 This表示web.xml中的resource标记等同于资源在context.xml中的标记。 This说012xxresource-ref web.xml中的标签在context.xml中查找资源标签。现在这两个声音特别令人困惑,因为我提到的这两个链接都是Tomcat doc链接,并且仍然有看似矛盾的声明。任何澄清都将非常有帮助。Tomcat:context.xml和web.xml配置jndi资源

回答

0

“资源”标签定义了资源,可以放置在很大程度上取决于部署首选项的xml文件中。要开始,我会在web应用程序的META-INF文件夹中放置一个context.xml。此目录是在网络应用程序作为WEB-INF相同级别的文件夹的示例是: -

META-INF/context.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> 

这两种可以以其他方式来配置。我通常会这样做,然后涉足。

+0

感谢悬崖,但这并没有给我清晰。您只重申了我提供的第二个链接中已经提到的内容。我希望弄清楚两个链接中提到的矛盾性陈述之间的混淆。 –