Java数据库连接

1.JDBC简介

JDBC:Java DataBase Connectivity

1.1JDBC层次结构

JDBC是Java中提供的连接各种不同数据库的通用技术,其主要包括以下功能
a.支持各种不同的SQL语句对数据库进行操作
b.提供了一个应用可以连接多种数据库或者在多种数据库之间切换的可能。这是因为通过JDBC连接之后,所有数据库的操作几乎都是相同的,因此只需要开发一个具体操作数据库的程序而通过JDBC连接不同的数据库

1.2JDBC驱动管理器

JDBC连接数据库需要通过驱动器连接,不同数据库对应不同的驱动器
注意连接不同数据库之前都需要先导入对应jar,使用对应驱动名称

2.连接SQL Server

注意:a.连接SQL Server之前需要先导入jar,不同的Java版本需要使用不同的jar。jar可以在微软官网下载
b.连接之前需要将SQL Server设置成混合登陆,即可以通过SQL Server身份登陆
c.需要配置SQL Server的IP属性。可以先同过cmd窗口键入telnet 127.0.0.1 1433查看,如果显示连接失败需要配置
d.cmd窗口键入telnet 127.0.0.1 1433查看失败原因可能是telnet远程登陆协议没有打开,可以百度查看打开telnet协议
编程步骤:先加载驱动,驱动参数根据数据库管理系统不同而不同。配置url(注意修改DataBase参数)以及登陆账户和密码
具体实例

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class SQLServerConnectTest {
 private Connection con = null;
 public SQLServerConnectTest(String url, String user, String password) {
  	try {
   		Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   		con = DriverManager.getConnection(url, user, password);
   		System.out.println("连接成功");
   		con.close();
  	} catch (ClassNotFoundException e) {
   		e.printStackTrace();
  	} catch (SQLException e) {
   		e.printStackTrace();
  	}	
 }
 public static void main(String[] args) {
  	String url = "jdbc:sqlserver://localhost:1433;DatabaseName=student";//注意修改DatabaseName
  	String user = "sa";
  	String password = "123456";
  	SQLServerConnectTest test = new SQLServerConnectTest(url, user, password);
 }
}

问题:如果导入jar不成功将会提示java.lang.ClassNotFoundExceotion,
如果jar版本与本机Java版本不匹配的话将会提示java.lang.NoClassDefFoundError和javax.xml.bind.DatatypeConverter

3.连接MySQL

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class MySQLConnectTest {
 private Connection con = null;
 public MySQLConnectTest(String url, String user, String password) {
  	try {
  		Class.forName("com.mysql.jdbc.Driver");
   		con = DriverManager.getConnection(url, user, password);
   		System.out.println("连接成功");
   		con.close();
  	} catch (ClassNotFoundException e) {
   		e.printStackTrace();
  	} catch (SQLException e) {
   		e.printStackTrace();
  	}
 }
 public static void main(String[] args) {
  	String url = "jdbc:mysql://localhost:3306/student?useUnicode=true&characterEncoding=utf-8&useSSL=false";//注意url的配置
  	//String url = "jdbc:mysql://localhost:3306/job?useSSL=false";
  	String user = "root";
  	String password = "123456";
  	MySQLConnectTest test = new MySQLConnectTest(url, user, password);
 }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值