JDBC操作步骤及数据库连接操作
JDBC本身是一个标准,所以其操作步骤是固定的,以后只需要修改很少的一部分代码就可以达到不同数据库间的连接转换功能。
JDBC操作步骤:
数据库安装并配置完成之后,就可以按照以下的步骤进行数据库的操作了:
1):加载数据库驱动程序:各个数据库都会提供JDBC的驱动程序开发包,直接把JDBC操作所需要的开发包(一般为*.jar或*.zip)直接配置到classpath路径即可。
2):连接数据库:根据各个数据库的不同,连接的地址也不同,此连接地址将由数据库厂商提供,一般在使用JDBC连接数据库的时候都要求用户输入数据库连接的用户名和密码,本章使用的是mysql数据库,所以用户名为“root”,密码为“mysqladmin”,用户在取得连接之后才可以对数据库进行查询或更新的操作。
3):使用语句进行数据库操作:数据库操作分为更新和查询两种操作,除了可以使用标准的SQL语句之外,对于各个数据库也可以使用其自己提供的各种命令。
4):关闭数据库连接:数据库操作完毕之后需要关闭连接以释放资源。
如果要想连接数据库,则肯定要使用连接地址。
数据库的连接是非常有限的,所以打开之后一定要关闭。
配置数据库的驱动程序
数据库的驱动程序是由各个数据库生产商提供,只要在JAVA中要想连接数据库,则肯定各个DB要有所支持。
现在将下载好的驱动程序放在C盘目录中,所以此时直接修改CLASSPATH即可,在windows中的环境中直接修改即可,如果没有classpath则自己增加一个新的。
此时数据库驱动程序就安装完成了。
加载驱动程序
通过Class.forName()语句可以加载一个驱动程序。
Class实例化需要一个完整的包.类名称,此:“包.类”名称的路径就应该是驱动程序的名称。
public class ConnectionDemo01{
//定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver";
public static void main(String args[]){
try
{
Class.forName(DBDRIVER); //加载驱动程序
}
catch (ClassNotFoundException e)
{
e.printStackTrace();
}
}
};
数据库的驱动程序配置完成。如果此时出现了java.lang.ClassNotFoundException异常,则表明classpath配置有问题。肯定要查classpath的配置。
连接及关闭数据库
数据库驱动程序可以正常加载的话,下面就可以连接数据库了,使用DriverManager类进行连接操作,DriverManager类中的常用方法如下:
Public static Connection getConnection(String url) throws SQLException:通过连接地址连接数据库。
Public static Connection getConnection(String url,String user,String password)throws SQLException:通过连接地址连接数据库,同时输入用户名和密码。
但是,在连接的时候肯定需要一个连接地址,这些连接地址将由各个数据库生产商提供。
DriverManager说明
在DriverManager中,提供的主要操作就是得到一个数据库的连接,getConnection()方法就是取得连接对象,此方法返回的类型是Connection对象,不管使用哪种方式连接,都必须提供一个数据库的连接地址,如果在连接数据库的时候需要用户名和密码,则还需要将用户名和密码设置上。
MySQL数据库的连接地址格式:
Jdbc:mysql://IP地址:端口号/数据库名称
数据库连接地址的形式
JDBC虽然提供了与平台无关的数据库操作,但是各个数据库的连接地址是有差异的,JDBC的连接地址实际上是由以下的三个部分组成:
Jdbc协议:JDBC URL中的协议总是jdbc;
子协议:驱动程序名或数据库连接机制(这种机制可由一个或多个驱动程序支持)的名称,例如:mysql;
子名称:一种标识数据库的方法。必须遵循“//主机名:端口/子协议”的标准URL命名约定,例如://localhost:3306/skewrain。
Connection
通过DriverManager取得Connection对象之后,实际上就表示数据库连接上了,连接上数据库之后就可以进行数据库的更新及查询操作,但是操作的最后数据库连接必须关闭。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectionDemo02{
//定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver";
//定义MySQL数据库的连接地址
public static final String DBURL = "jdbc:mysql://localhost:3306/skewrain";
//MySQL数据库的连接用户名
public static final String DBUSER = "root";
//MySQL数据库的连接密码
public static final String DBPASS = "mysqladmin";
public static void main(String args[]){
Connection conn = null; //数据库连接
try
{
Class.forName(DBDRIVER); //加载驱动程序
}
catch (ClassNotFoundException e)
{
e.printStackTrace();
}
try{
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS);
}catch(SQLException e){
e.printStackTrace();
}
System.out.println(conn); //如果此时可以打印表示连接正常
try{
conn.close(); //数据库关闭
}catch(SQLException e){
e.printStackTrace();
}
}
};
执行以上代码的结果如下所示:
执行结果中返回了一个对象,所以表示数据库已经正常连接了。之后就可以进行数据库的一系列SQL语句操作了。
注意:
1.JDBC连接各个数据库必须配置驱动程序;
2.JDBC的操作步骤;
3.数据库的连接操作,连接之后数据库必须关闭。