0

当我在 Eclipse 中打开 jdbc 连接时 - 它工作正常。

但是当我创建可执行 jar 文件并运行它时 - 我遇到了 Integrated Security=true 的问题。

或者可能不仅具有集成安全性...

4

1 回答 1

1

我假设您正在谈论连接到 Microsoft SQL Server。为了能够使用集成安全性,您需要添加http://msdn.microsoft.com/en-us/library/ms378428.aspx#Connectingintegratedsqljdbc_auth.dlljava.library.path记录的:

JDBC 驱动程序通过integratedSecurity 连接字符串属性支持在Windows 操作系统上使用Type 2 集成身份验证。要使用集成身份验证,请将sqljdbc_auth.dll 文件复制到安装了 JDBC 驱动程序的计算机上的 Windows 系统路径上的目录中。

这些sqljdbc_auth.dll文件安装在以下位置:

<installation directory>\sqljdbc_<version>\<language>\auth\

[...]

或者,您可以设置 java.libary.path 系统属性来指定sqljdbc_auth.dll. 例如,如果 JDBC 驱动程序安装在默认目录中,您可以在 Java 应用程序启动时使用以下虚拟机 (VM) 参数指定 DLL 的位置:

-Djava.library.path=C:\Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_<version>\enu\auth\x86

请注意,您需要根据您的 java VM 的位数使用正确的 DLL(因此对于 32 位,使用一个 from x86,对于 64 位,使用一个 from x64)。

于 2013-01-22T10:32:38.487 回答