最近学习了一下j数据库,所以写一个简单的java链接数据库的实例。
首先是源代码:
public class Test {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:INSPUR",//@localhost表示本机地址,1521是链接的端口号,INSPUR是数据库名,默认一般是oracle
"scott","tiger");//scott和tiger为要登录的用户名和密码
System.out.println("连接成功");
Statement st=conn.createStatement();
ResultSet rs=st.executeQuery("select * from STUDENT");
while(rs.next())
{
String sname=rs.getString("STUDENT_NAME");
String sno=rs.getString("STUDENT_NUMBER");
System.out.println("sno="+sno+
"sname="+sname);
}
rs.close();
st.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
首先Class.forName运用反射的方式加载了链接数据库的驱动,
DriverManager类在API的解释是:The basic service for managing a set of JDBC driver,大意是说这个类提供了JDBC驱动的基本服务,在API中可以找到有getConnection方法,这个方法返回的是一个Connection。
对于Connection类,API中的解释是:A connection (session) with a specific database. SQL statements are executed and results are returned within the context of a connection.大概的意思是Connection会与指定的数据库建立连接,并且能传递给数据库SQL语句,让数据库进行执行。具体的方法,可以在API中查到:createStatement()。这个方法就是创建一个Statement对象,利用Statement对象来向数据库发送要执行的SQL语句。
再来看Statement,在Statement下可以找到一个executeQuery(String sql)方法,返回类型是ResultSet。ResultSet表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。
那么在这个例子里,通过DriverManager.getConnection()创建conn,conn又利用createStatement方法创建Statement对象st,st向数据库传递SQL语句,并利用ResultSet接受返回的数据。
看一下运行效果
只是一个简单的小例子,算是对java操作数据库有了一个最最基本的了解,有写的有问题的地方欢迎大家指正。