本文将以jtds作为驱动包来连接,简单方便!
使用官方的驱动包可能会遇到如下报错:jdbc SQLServer Error: “The server selected protocol version TLS10
详见:https://blog.csdn.net/lxyoucan/article/details/125681677
这让部署变的很麻烦。无意中发现IDEA中可以使用jtds驱动连接sql server数据库,非常的方便。所以我就想尝试一下使用jtds作为驱动来连接sql server。
依赖
<!-- https://mvnrepository.com/artifact/net.sourceforge.jtds/jtds --><dependency><groupId>net.sourceforge.jtds</groupId><artifactId>jtds</artifactId><version>1.3.1</version></dependency>
java代码
package sqlserver;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class JTDSSqlServerExample {// jTDS JDBC驱动和数据库URLstatic final String JDBC_DRIVER = "net.sourceforge.jtds.jdbc.Driver";static final String DB_URL = "jdbc:jtds:sqlserver://127.0.0.1:1434/dbname";// 数据库的用户名和密码static final String USER = "sa";static final String PASS = "password";public static void main(String[] args) {Connection conn = null;PreparedStatement stmt = null;try {// 注册JDBC驱动Class.forName(JDBC_DRIVER);// 打开一个连接System.out.println("Connecting to database...");conn = DriverManager.getConnection(DB_URL, USER, PASS);// 执行查询String sql = "select * from lx_teacher where realname like '%刘%'";stmt = conn.prepareStatement(sql);ResultSet rs = stmt.executeQuery();// 处理结果集while (rs.next()) {String name = rs.getString("realname");// 在这里处理结果,例如打印到控制台System.out.println(" Name: " + name );}// 关闭资源rs.close();stmt.close();conn.close();} catch (SQLException se) {// 处理JDBC错误se.printStackTrace();} catch (Exception e) {// 处理Class.forName错误e.printStackTrace();} finally {// 关闭资源try {if (stmt != null) stmt.close();} catch (SQLException se2) {// 什么也不做}try {if (conn != null) conn.close();} catch (SQLException se) {se.printStackTrace();}}System.out.println("Goodbye!");}
}