Java 如何使用JDBC(通过persistence.xml)连接到具有集成安全性的Sql Server

Java 如何使用JDBC(通过persistence.xml)连接到具有集成安全性的Sql Server,java,sql-server,hibernate,jdbc,Java,Sql Server,Hibernate,Jdbc,我正在尝试使用上面的配置连接到本地sql server。Mysql、oracle和postgresql运行良好,没有任何问题,但我不知道如何连接到sql server,因为我既没有用户名也没有密码。我写了这样的东西。数据源=myserver;初始目录=mydb;集成安全=SSPI。如何实现这一点或另一种方式来连接我的sql server本地主机?谢谢为了使用Windows身份验证连接到SQL Server实例,您需要在连接URL中添加integratedSecurity=true,例如 jdbc

我正在尝试使用上面的配置连接到本地sql server。Mysql、oracle和postgresql运行良好,没有任何问题,但我不知道如何连接到sql server,因为我既没有用户名也没有密码。我写了这样的东西。数据源=myserver;初始目录=mydb;集成安全=SSPI。如何实现这一点或另一种方式来连接我的sql server本地主机?谢谢

为了使用Windows身份验证连接到SQL Server实例,您需要在连接URL中添加integratedSecurity=true,例如

jdbc:sqlserver://localhost:49242;databaseName=myDb;integratedSecurity=true
您还需要确保可以在Java应用程序的库路径上找到文件sqljdbc_auth.dll。一种方法是确保它的位置包含在Windows PATH环境变量中。

既然我没有用户名和密码,那么这是什么意思?!没有user和Pass,您无法连接到数据库。我只写我的计算机名和数据库名来连接它。我想windows身份验证只是让我in@Leviand您知道Microsoft SQL Server JDBC驱动程序支持Windows/Kerberos身份验证吗?这意味着您可以在不指定用户名和密码的情况下进行连接。它将使用运行当前进程的用户的凭据。是的,但它最好使用专用用户imho…的备用Kerberos身份验证不需要本机库,请参阅
<property name="javax.persistence.jdbc.driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
<property name="javax.persistence.jdbc.url" value="jdbc:sqlserver://localhost/my_db"/>
<property name="javax.persistence.jdbc.user" value=""/>
<property name="javax.persistence.jdbc.password" value=""/>
<property name="hibernate.dialect" value="org.hibernate.dialect.SQLServerDialect"/>
<property name="hibernate.show_sql" value="true"/>