花哥哥的瞎扯:
Java连接Oracle数据库的基本操作步骤:
1)注册连接数据库
- 加载驱动程序
- 连接数据库的三大参数:URL(协议 IP Port XE) Username password
2)执行SQL语句(select delete update...等操作)
3)提取结果(表)中的数据:表转变为Java的变量(数据库返回表时)
4)数据进行处理
5)关闭资源
超级好的花森哥哥给你准备的趣味理解:
package javaspace;
import java.util.*;
import java.sql.*;
public class OracleConnection {
public static void main(String args[])throws Exception{
String drivers="oracle.jdbc.driver.OracleDriver";//java运行数据库时需的驱动
String url="jdbc:oracle:thin:@127.0.0.1:1521/xe";//127.0.0.1相当于本机的虚拟网卡产生的iP同等于localhost不用联网即可获取。
String user="system";
String passwd="123456";
Connection conn;
String sql,num,name,sno;
int age;
System.out.println("请输入学号:");
sno=in.in.nextLine();
Class.forName(drivers); //1-加载Oracle驱动所需的类强制加载到内存
conn = DriverManager.getConnection(url, user,passwd);//2-连接到数据库
conn.setAutoCommit(false); //决定是否不自动提交sql语句。
sql = " SELECT sno,sname,age FROM S where sno=?";
PreparedStatement stmt=conn.prepareStatement(sql);//用于发送sql语句,这句话相当于预处理上面的sql语句,就相当于把sql语句捏成豌豆荚一样,问号的地方就是一个豆槽,多个问号就多个豆槽。
stmt.setString(1,sno);//将sno绑定到sql语句的第一个问号,也就相当于往豆槽里面填东西。
ResultSet rs = stmt.executeQuery();//3-执行SQL语句 形成结果表rs结果集类可对数据操作,这句话就相当于,把豌豆荚送给Oracle是数据库,数据库给你返回你所需要的表。
System.out.println("\n 学生信息表");
System.out.println("----------------");
System.out.println("学号 姓名 年龄");
System.out.println("----------------");
/*5-对结果表rs处理:(表中的索引指针是指头,而不是第一行记录,所以要对表中数据操作 要先执行next(),索引指针向下移一行。 )
(1) 指针下移一行rs.next() rs.next()返回值为true或false
(2) 读取当前行数据:getXXX() 并赋值于Java变量
*/
while(rs.next())//每一次循环都只是对一行进行操作
{
num = rs.getString("sno");//特别注意!表中的的第一个数据与num捆绑,而且特别注意sno是表中的第一个属性,不能乱写,数据对应着数据。
name = rs.getString("sname");
age = rs.getInt("age");
System.out.println(num+" "+name+" "+age);
}
System.out.println("-----------------");
stmt.close();//6-关闭连接资源,相当于刚刚你打开了豌豆荚,装东西放到豆槽里面去,现在要管上豌豆荚。
conn.commit();//手动提交sql语句
conn.close(); //关闭与数据库的连接。
}
}
上面算是很基础很常规的java连接数据库的操作步骤,之后登有水平了再研究,如何利用事务回滚方法conn.roolback(),以及
properties配置文件连接数据库,只需修改properties文件就能换数据库,进而不动程序,解耦合的问题吧。
程序操控数据库的理解图:
话痨:
我也是一名新手,我知道学这个东西不能理解的痛楚,所以我常常尽可能地把这个事情讲清楚,不管是用搞笑还是带点污的话,说不定能记得更牢固一些哈哈,没办法啦,我是把我想到秃头的东西分享哈哈,谁要我这么好呢。