使用jdbc驱动程序将java连接到SQL server
我读了另一个与之相关的主题,但没有找到解决方案使用jdbc驱动程序将java连接到SQL server,java,sql-server,Java,Sql Server,我读了另一个与之相关的主题,但没有找到解决方案 String jdbcUrl = "jdbc:sqlserver://;server_name=MYSERVERNAME,instancename=MAINSTANCENAME:1211;databaseName=MYDATABASENAME;user=MYUSER;password=MYPASSWORD"; Connection conn = DriverManager.getConnection
String jdbcUrl = "jdbc:sqlserver://;server_name=MYSERVERNAME,instancename=MAINSTANCENAME:1211;databaseName=MYDATABASENAME;user=MYUSER;password=MYPASSWORD";
Connection conn = DriverManager.getConnection(jdbcUrl);
System.out.println("successfull");
结果是错误:线程“main”java.sql.SQLException中的异常:未找到适合jdbc的驱动程序:sqlserver://代码>
在pom THRA中,有依赖项:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>7.1.1.jre10-preview</version>
<scope>test</scope>
</dependency>
</dependencies>
朱尼特
朱尼特
3.8.1
测试
com.microsoft.sqlserver
mssql jdbc
7.1.1.jre10-预览
测试
创建数据源bean:
@Bean(name = "dataSource")
public DataSource dataSource() throws SQLException {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
dataSource.setUrl("jdbc:sqlserver://MYSERVERNAME;databaseName=MYDATABASENAME");
dataSource.setUsername("MYUSER");
dataSource.setPassword("MYPASSWORD");
return dataSource;
}
并使用它:
DataSource ds = (DataSource)ApplicationContextProvider.getApplicationContext().getBean("dataSource");
Connection c = ds.getConnection();
创建数据源bean:
@Bean(name = "dataSource")
public DataSource dataSource() throws SQLException {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
dataSource.setUrl("jdbc:sqlserver://MYSERVERNAME;databaseName=MYDATABASENAME");
dataSource.setUsername("MYUSER");
dataSource.setPassword("MYPASSWORD");
return dataSource;
}
并使用它:
DataSource ds = (DataSource)ApplicationContextProvider.getApplicationContext().getBean("dataSource");
Connection c = ds.getConnection();
由此:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>7.1.1.jre10-preview</version>
<scope>test</scope>
</dependency>
com.microsoft.sqlserver
mssql jdbc
7.1.1.jre10-预览
测试
删除此行:
<scope>test</scope>
测试
它使JDBC驱动程序仅在单元测试期间可用。由此:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>7.1.1.jre10-preview</version>
<scope>test</scope>
</dependency>
com.microsoft.sqlserver
mssql jdbc
7.1.1.jre10-预览
测试
删除此行:
<scope>test</scope>
测试
它使JDBC驱动程序仅在单元测试期间可用。这将JDBC驱动程序添加到单元测试中。您是否在上面的代码中运行单元测试?不,我还没有进行单元测试。您正在使用Class.forName
?Class.forName
?导入的类是什么?请尝试删除/>之后的分号代码>将JDBC驱动程序添加到单元测试中。您是否在上面的代码中运行单元测试?不,我还没有进行单元测试。您正在使用Class.forName
?Class.forName
?导入的类是什么?请尝试删除/>之后的分号代码>什么是ApplicationContextProvider
?这里的解释:我做了SpringApplication.run(TestJdbcApplication.class,args).getBean(“数据源”)
,您的解决方案就可以工作了。。。“jdbc:sqlserver://;”“什么是ApplicationContextProvider
”中的分号有什么问题?这里的解释是:我做了SpringApplication.run(TestJdbcApplication.class,args)。getBean(“数据源”)
,您的解决方案可以工作。。。“jdbc:sqlserver://;”中的分号有什么问题