当我运行我的Spring启动应用程序时,它试图将数据存储到MS SQL服务器数据库中,但它无法连接到Microsoft SQL数据库。
运行时遇到以下异常:
引起:com.microsoft.sqlserver.jdbc.SQLServerException:与主机/ sqlexpress,端口1433的TCP / IP连接失败。错误:“null。验证连接属性。确保在主机上运行SQL Server实例并接受端口上的TCP / IP连接。确保防火墙不阻止与端口的TCP连接。”
在代码中,在具有main方法的java类中,bean方法“dataSource()”实现如下:
@Bean public DataSource dataSource(){
final DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
dataSource.setUrl("jdbc:sqlserver://<system_name>/sqlexpress:1433;databaseName=databasename");
dataSource.setUsername("username");
dataSource.setPassword("password");
return dataSource;
}
我正在尝试使用JdbcTemplate进行连接。 在gradle依赖项中,添加了以下依赖项:
编译( “org.springframework:弹簧JDBC”) 编译( “com.microsoft.sqlserver:sqljdbc4:4.0”)
从Microsoft SQL Server 2014 Management Studio,我可以连接到具有端口1433的主机system_name / sqlexpress。 我检查了SQL服务器配置管理器 - &gt; SQL Server网络配置 - &gt; SQLEXPRESS的协议 - &gt; TCP / IP。 它已启用,在TCP / IP属性中,IPAll的TCP端口仅设置为1433。
我无法确定为什么在从springboot应用程序尝试连接时它没有连接。
如果您对此MSSQL连接问题有任何可能的解决方案,那将非常值得注意。
由于
答案 0 :(得分:1)
基本上,您需要以硬编码方式配置TCP / IP。 如何做到这一点在这里得到了很好的解释configuring SpringBoot for MSSQL: