Tomcat JNDI连接池配置

    对于线上应用,我们通常将数据库连接交给容器,比如tomcat容器,那么开发者只需要通过JNDI的方式获取dataSource即可,不需要再关注数据库地址、密码等敏感信息,这样我们就可以简单做到配置隔离。

1)在tomcat的context.xml中增加如下配置:

    

 

2)增加jar

    因为tomcat下或许没有相关的JDBC Connector的jar,比如mysql,此时我们需要将mysql Driver的jar复制到tomcat的lib目录下。

 

3)在spring中使用JNDI引用方式:


        
            java:comp/env/jdbc/localDB
        
    

 

   对于tomcat容器而言,我们倾向于使用tomcat-jdbc-pool,官方宣称性能相对于其他pool而言更加优秀,而且它与dbcp的参数配置几乎一样,非常便于配置。不过我们可能需要将jdbc链接jar也copy到tomcat的lib目录下,否则将无法启动。

   对于jdbc的url中配置,需要注意,需要将";"使用“&”转义,否则将无法正常启动;我也遇到了一个非常奇怪的错误“The reference to entity "characterEncoding" must end with the ';' delimiter”,这个错误的解决办法就是“characterEncoding=UTF-8”参数作为url的最后一个参数即可。

你可能感兴趣的:(JAVA)