1.今天下午修改很早做的一个系统,用的是JDBC-ODBC驱动。在我本机Tomcat做测试,发现使用startup.bat启动Tomcat服务后,访问Web服务一切正常。但使用MonitorTomcat启动Tomcat作为服务例程,则访问Web服务报错:[Microsoft][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序。2.但ODBC数据源配置时测试也正常。我晕。3.跟踪排查一下,发现是在DriverManager.getConnection()的时候报错的。可能还是ODBC的问题。但不知道是咋回事了。4.上网查了N久,一语道破“要用系统DSN”。关于这点还真没有想到。5.一直使用“用户DSN”建立“用户数据源”的。DSN:DateSourceName,数据源名称。6.在“ODBC数据源管理器”中,设置用于连接数据库的DSN有三种:用户DSN、系统DSN和文件DSN。因为MonitorTomcat启动的Tomcat服务是作为系统级NT服务例程运行的,这样就无法访问“用户DSN”建立的“用户数据源”。7.果然,建立了“系统数据源”就OK了。