当我在Eclipse中打开jdbc连接时 - 它工作正常。
但是当我创建可执行jar文件并运行它时 - 我遇到了Integrated Security = true的问题。
或者可能不仅仅是集成安全性......
答案 0 :(得分:1)
我假设您正在谈论连接到Microsoft SQL Server。能够使用集成安全性您需要在http://msdn.microsoft.com/en-us/library/ms378428.aspx#Connectingintegrated上记录的sqljdbc_auth.dll
上添加java.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
请注意,您需要使用正确的DLL,具体取决于您的java VM的位数(因此对于32位,请使用x86
中的一个,对于64位来自x64
)。< / p>