总结初次用JDBC连接SQL server数据库

总结初次用JDBC连接数据库

JDBC全称Java Database Connectivity,即java数据库连接,它是java官方的一套用于执行SQL语句的java API。
因为JDBC要求各个数据库厂商按照统一的规范提供数据库驱动程序,在程序中由JDBC和具体的数据库驱动程序联系,用户不必与底层的数据库交互,使得代码的通用性更强。

准备工作——下载对应数据库驱动程序的jar包

我这里使用的数据库是SQL server,所以我应该下载SQL server数据库驱动程序的jar包
下载链接
https://learn.microsoft.com/zh-cn/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-ver16
SQL server 提供的是包含驱动程序的压缩包 sqljdbc_12.8.0.0_chs
jar包在sqljdbc_12.8.0.0_chs\sqljdbc_12.8\chs\jars
将jar包导入到你的项目。

加载并注册数据库驱动程序

//1.通过 DriverManger的静态方法registerDriver()加载
DriverManager.registerDriver(Driver driver);
//2.通过 Class的静态方法forName()加载 (常用)
Class.forName(String DriverName);
//例
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

连接数据库

//使用DriverManager的静态方法getConnection()创建连接类(Connection)对象
Connection conn =DriverManager.getConnection(String url,String user,String pwd);
//后两个参数可省
//例
		/*
        jdbc:sqlserver://localhost:1433;指定数据库引擎和数据库位置
        integratedSecurity=true 表示使用windows验证
        DatabaseName=Jdata 指定连接的数据库
        encrypt=true 表示启用SSL/TLS加密传输 (可省,默认为true)
        trustServerCertificate=true 表示信任服务端的SSL/TLS证书
        */
/*
值得特别说明一下,当integratedSecurity=true(使用windows验证)时,
要为集成身份验证配置驱动程序,没有配会报错(我就吃了这个亏)。
具体操作就是,将包含驱动程序 sqljdbc_12.8.0.0_chs中的mssql-jdbc_auth-12.8.0.x64.dll复值到jdk的bin目录中
mssql-jdbc_auth-12.8.0.x64.dll具体位置
sqljdbc_12.8.0.0_chs\sqljdbc_12.8\chs\auth\x64
*/
        String url="jdbc:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=Jdata;trustServerCertificate=true;";
        Connection conn= DriverManager.getConnection(url);

实现第一个简单的JDBC程序

package com.gezishan;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Main {
    public static void main(String[] args) throws Exception {
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        String url="jdbc:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=Jdata;trustServerCertificate=true;";
        Connection conn= DriverManager.getConnection(url);
        Statement stat=conn.createStatement();  //创建操作数据库对象
        String sql="select * from jbc";  //在数据库中已创建好对应Jdata数据库及表jbc
        ResultSet rs=stat.executeQuery(sql);  //执行sql返回结果存到 ResultSet对象中 
        while(rs.next()){ 
            int id=rs.getInt("id");
            String name=rs.getString("name");
            System.out.println(id+" "+name);
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值