代码改变世界

java之jdbc认识(二)

2013-05-28 20:48  zhuo1  阅读(184)  评论(0编辑  收藏  举报

JDBC连接数据库步骤:

在连接之前首先应导入jar包,接下来再通过代码连接数据库。

1、            注册驱动(只做一次)

注册驱动有三种方法:

Class.forName(“com.mysql.jdbc.Driver”);

DriverManager.registerDriver(com.mysql.jdbc.Driver);

System.setProperty(“jdbc.drivers”, “com.mysql.jdbc.Driver”); 

一般都采用第一种方法。而在类路径找不到驱动程序时,将抛出异常,因此程序应进行异常处理。

2、            建立连接(connection

Connection conn=DriverManager.getConnection(url, user,password);

在DriverManager中,提供的主要操作是得到数据库的连接,getConnection()方法主要是取得连接对象,此方法的返回类型是Connection对象,不管使用哪种方式,都需要提供数据库连接地址,即URL,以及用户名和密码。

3、            创建语句(statement

Statement st = conn.createStatement();

4、            处理执行结果(ResultSet

 ResultSet re= statement.executeQuery(sql);

While(re.next()){

      re.getString(“col_name”);

      re.getInt(“col_name”);

      //…

}

5、            释放资源

re.close();

st.close();

conn.close();

先创建的后释放,后创建的先释放。对于Connection的建立要尽量晚,释放要尽量早。

代码示例:

 

import java.sql.*;
public class Jdbctest {
public static void main(String[] args) {
		ResultSet re=null;
		Statement st=null;
		Connection conn=null;
		String url="jdbc:mysql://localhost:3306/test";
		String use="root";
		String password="******";
		
		try{
		Class.forName("com.mysql.jdbc.Driver");//注册驱动
		conn=DriverManager.getConnection(url, use,password);//建立连接
		st=conn.createStatement();//创建语句
		re=st.executeQuery("select * from user");//执行sql语句
		while(re.next()){
			System.out.println(re.getObject(1)+"\t"+re.getObject(2)+"\t"+re.getObject(3)+"\t"+re.getObject(4));
			}//处理结果
			
		}
		catch(ClassNotFoundException e)
		{e.printStackTrace();
			
		} 
		catch (SQLException e) {
			
			e.printStackTrace();
			}
		finally{
			//释放资源
			try{
				if(re!=null)
				{	re.close(); re=null;}
				if(st!=null)
				{st.close(); st=null;}
				if(conn!=null)
				{conn.close();conn=null;}
				}
			catch (SQLException e) {
				
				e.printStackTrace();
				}
		
			
		}
		
		
	}

}