我有一个tomcat服务器,在tomcatFolder/conf/server.xml下,我得到了这个标签资源
<Resource name="jdbc/TestDB"
auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
testWhileIdle="true"
testOnBorrow="true"
testOnReturn="false"
validationQuery="SELECT 1"
validationInterval="30000"
timeBetweenEvictionRunsMillis="30000"
maxActive="100"
minIdle="10"
maxWait="10000"
initialSize="10"
removeAbandonedTimeout="60"
removeAbandoned="true"
logAbandoned="true"
minEvictableIdleTimeMillis="30000"
jmxEnabled="true"
jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;
org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer"
username="root"
password="password"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/mysql"/>如何在setenv.sh或catalina.sh run命令中覆盖maxWait值??
发布于 2021-04-08 14:13:40
我不确定如何/override/,但您可以在setenv.sh中定义一个值并在配置文件中使用它。例如:
# setenv.sh
JAVA_OPTS="$JAVA_OPTS -Djdbc.maxWait=5000" <!-- server.xml or context.xml -->
<Resource name=...
...
maxWait="${jdbc.maxWait}"
...更新:
Tomcat版本9.0.34和8.5.54在配置文件中使用${...}属性替换时添加了对默认值的支持。对于9.0.34和8.5.54,分隔符是冒号字符。例如:
maxWait="${jdbc.maxWait:10000}"对于9.0.35和8.5.55,分隔符更改为:-。例如:
maxWait="${jdbc.maxWait:-10000}"(感谢Piotr P.Karwasz的评论)
https://stackoverflow.com/questions/66995008
复制相似问题