2010-03-18 38 views
2

我正在使用Tomcat 6.0,我想知道如何配置Tomcat的server.xml文件以连接到mysql数据库,并在java中启用基于表单的身份验证。如何为mysql配置tomcat 6.0

我目前使用的是mysql 5.1,而且我已经下载了mysql连接器的jar文件,并且放在Tomcat的lib目录下。

回答

4

我猜你想让Tomcat创建连接池到MySQL数据库。在这种情况下,您不需要配置server.xml文件。在context.xml文件,你需要添加一个<Resource>元素,像这样:

<Resource name="jdbc/MySQLPool" auth="Container" type="javax.sql.DataSource" 
      factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" 
      maxActive="100" maxIdle="30" maxWait="10000" 
      username="USERNAME" password="PASSWORD" 
      driverClassName="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource" 
      url="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=Cp1251" 
      removeAbandoned="true" /> 

(我不知道这是MySQL的正确driverClassName,但你要的资源看起来有点像这样)。

欲了解更多信息,请尝试检查Tomcat的文档JNDI ResourcesJDBC DataSources

3

通常情况下,context.xml和server.xml是分开的,并且您通常在Web应用程序级别(即该Web应用程序的上下文中)配置数据源。原因在于数据源不是与服务器连接,而是连接到该服务器中的数据库,并且有多个应用程序访问同一个数据库并不总是一个好主意(如果您没有为此设计应用程序) 。

这就是说,看看this tomcat wiki page它描述你想要什么(或我认为你想要的)。

验证检出this thread on velocity reviews