java JDBC连接数据库操作详解

1.JDBC连接数据库流程

在java之中,所有的数据库操纵的类和接口都保存在了java.sql包下
一个类:DriverManage
四个接口:Connection,Statement,ResultSet,PreparedStatement
所有JDBC操作数据库操作流程都是固定的
1,加载数据库的驱动(向容器中加载)
2,进行数据库的连接(通过DriverManage类完成,Connection表示连接)
3,进行数据库的增删改查(Statement,ResultSet,PreparedStatement)
4,关闭数据库操作以及连接

2.加载数据库驱动

1,在eclips中鼠标右键点击工程,选择Properties
java JDBC连接数据库操作详解_第1张图片

2.点击Java Build Path 选择Libraries下的Add External
java JDBC连接数据库操作详解_第2张图片
3.点击要加入的对应数据库jar包,再点击打开
java JDBC连接数据库操作详解_第3张图片
4,最后选择OK
java JDBC连接数据库操作详解_第4张图片
Oracle驱动程序类:oracle.jdbc.driver.OracleDriver(导入的oracle包下的jbdc子包下的driver子包下的OracleDriver类)
加载类使用Class.forName完成:

Class.forName("oracle.jdbc.driver.OracleDriver");

加载数据库的驱动就完成了

3.进行数据库的连接

连接数据库需要提供有如下几个信息(前提数据库服务要右键启动
java JDBC连接数据库操作详解_第5张图片
1,数据库连接地址(这个是有不同的数据库厂商提供的):jdbc:oracle:连接方式:主机名称:端口名称:数据库的SID

jdbc:oracle:thin:@localhost:1521:orcl

2,数据库的用户名:scott
3,数据库的密码:tiger(默认密码,如有修改请改为对应密码)

package jdbc;

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

public class TestConnection {
	static Connection con=null;
	static PreparedStatement stmt=null;
	public static void main(String[] args) throws ClassNotFoundException, SQLException  {
			//加载数据库驱动
			Class.forName("oracle.jdbc.driver.OracleDriver");
			//连接数据库
			con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","tiger");
			//进行数据库操作
			stmt = con.createStatement();
			System.out.println(con);
			//关闭数据库
			stmt.close();
			con.close();
	}
}

输出该对象则表示连接数据库成功

java JDBC连接数据库操作详解_第6张图片

4.进行数据库操作

package jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.PreparedStatement;
import java.util.Date;

public class TestConnection {
	static Connection con=null;
	static PreparedStatement stmt=null;
	public static void main(String[] args) throws ClassNotFoundException, SQLException  {
			//第一步加载数据库驱动
			Class.forName("oracle.jdbc.driver.OracleDriver");
			//第二步连接数据库
			con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","a");
			//第三步编写sql
			String sql="select info.* from info where info.id=? and info.name=? and info.birthday=? ";//问号表示占位符
			//第四步预编译
			stmt = con.prepareStatement(sql);
			//第五步向占位符赋值
			stmt.setInt(1, 1);
			stmt.setString(2, "小王");
			Date birthday= new Date();
			stmt.setDate(3,new java.sql.Date(birthday.getTime()));//将util型的date转为sql型date
			//第六步执行sql
			result=stmt.executeQuery();//如果是更新则使用:int len= stmt.executeUpdate();得到更新的数量
			//第七步输出搜索到的值
			while(result.next()) {
				int id=result.getInt(1);
				String name=result.getString(2);
				Date info_birthday=result.getDate(3);
				System.out.println("id是:"+id+"名字是:"+name+"生日是:"+info_birthday);
			}
			//第八步关闭数据库
			stmt.close();
			con.close();
	}
}

你可能感兴趣的:(数据库连接,oracle数据库连接及操作)