当前位置:  开发笔记 > 编程语言 > 正文

将MySQL连接器JAR放在我的WAR的WEB-INF/lib而不是$ CATALINA_HOME/common/lib中?

如何解决《将MySQL连接器JAR放在我的WAR的WEB-INF/lib而不是$CATALINA_HOME/common/lib中?》经验,为你挑选了1个好方法。

我即将在Tomcat 5.5.x服务器上使用MySQL和Hibernate.

必须mysql-connector-java-[version]-bin.jar$CATALINA_HOME/common/lib/我也可以把它放在WEB-INF/lib我的WAR文件中与我的其他库的依赖?

将它放在我的WAR中会更容易WEB-INF/lib,因为我可以通过这种方式使用Maven存储库.有没有大的缺点,而不是在Tomcat的公共库目录中?



1> Steve B...:

如果你的jar是共同的,那么它将全局加载到tomcat中.每个webapp都能看到它.如果您将它放在您的webapp中,只有您的webapp才能看到它.我假设Boris所指的是,如果你的全局tomcat配置的某些部分加载了需要mysql连接的东西(比如连接池),那么它将需要jdbc驱动程序,所以它需要共同的.否则,没有.

我相信你可以在tomcat配置中设置一个安全配置,将配置存储在db中.如果你使用它,它将需要一个驱动程序.

你为什么要在webapp/WEB-INF/lib中找东西?好吧,因为它是模块化的,它是你的webapp的一部分,如果你将webapp移动到其他地方,它不需要额外的部分,这是tomcat安装的一部分.如果您可以将webapp直接放入库存tomcat安装中,则维护会更容易.另一个原因 - 如果你有多个webapps,他们都会使用共同的jar,这可能会导致库冲突和版本问题.

一般来说,尽可能少的共同点,你可以逃脱.即使你只有一个应用程序.

推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有