JDBC编程步骤
首先把jar文件添加到工程中
1、Load the Driver a....Class.forName()|Class.forName().newInstance()|new DriverName()//参数是实例的类名
b....实例化时自动向DriverManager注册,不需显式调用DriverManager。registerDriver方法
2、Connect to the DataBase
Connection conn = DriverManager.getConnection()//有三个参数,数据库的连接串,用户名,密码
3、Execute the SQL//执行SQL语句
a.....Statement stmt = conn.createStatement()//创建语句对象
b....ResultSet rs = stmt.executeQuery()//执行查询语句,返回结果集,rs类似游标,指向第一天的顶端
c....Statement.executeUpdate()
4、Retrieve the result data
循环取得结果while(rs.next())//游标移动,返回值为是否能拿到下一条记录
5、show the result data
将数据库中的各种类型转换为Java中的类型System.out.println(rs.get****(" "))方法
6、close
a....close the resultSet rs.close()
b....close the statement stmt.close()
c....close the connection conn.close()
oracle数据库连接时:
Statement stmt = null;
ResultSet rs = null;
Connection conn = null;
try{
Class.forName("oracle.jdbc.driver.oracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.1:1521:SXT","scott","tiger");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery();
} catch(ClassNotFoundException e) {
e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null){
rs.close();
rs = null;
}
if(stmt != null){
stmt.close();
stmt = null;
}
if(conn != null){
conn.close();
conn = null;
}
} catch(SQLException e) {
e.printStackTrace();
}
}
MySql的数据库连接:
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try{
Class.forName("com.mysql.jdbc.Driver");//动态加载mysql驱动
String url = "jdbc:mysql://localhost:3306/bbs1?"
+"user=root&password=root&userUnicode=true&characterEncoding=gb2312";
conn = DriverManager.getConnection(url);//连接到数据库
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from article where pid = 0");
while(rs.next()) {
System.out.println(rs.getString("cont"));
tree(conn,rs.getInt("id"), 1);
}
} catch(SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(stmt != null) {
stmt.close();
stmt = null;
}
if(conn != null) {
conn.close();
conn = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
首先把jar文件添加到工程中
1、Load the Driver a....Class.forName()|Class.forName().newInstance()|new DriverName()//参数是实例的类名
b....实例化时自动向DriverManager注册,不需显式调用DriverManager。registerDriver方法
2、Connect to the DataBase
Connection conn = DriverManager.getConnection()//有三个参数,数据库的连接串,用户名,密码
3、Execute the SQL//执行SQL语句
a.....Statement stmt = conn.createStatement()//创建语句对象
b....ResultSet rs = stmt.executeQuery()//执行查询语句,返回结果集,rs类似游标,指向第一天的顶端
c....Statement.executeUpdate()
4、Retrieve the result data
循环取得结果while(rs.next())//游标移动,返回值为是否能拿到下一条记录
5、show the result data
将数据库中的各种类型转换为Java中的类型System.out.println(rs.get****(" "))方法
6、close
a....close the resultSet rs.close()
b....close the statement stmt.close()
c....close the connection conn.close()
oracle数据库连接时:
Statement stmt = null;
ResultSet rs = null;
Connection conn = null;
try{
Class.forName("oracle.jdbc.driver.oracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.1:1521:SXT","scott","tiger");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery();
} catch(ClassNotFoundException e) {
e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null){
rs.close();
rs = null;
}
if(stmt != null){
stmt.close();
stmt = null;
}
if(conn != null){
conn.close();
conn = null;
}
} catch(SQLException e) {
e.printStackTrace();
}
}
MySql的数据库连接:
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try{
Class.forName("com.mysql.jdbc.Driver");//动态加载mysql驱动
String url = "jdbc:mysql://localhost:3306/bbs1?"
+"user=root&password=root&userUnicode=true&characterEncoding=gb2312";
conn = DriverManager.getConnection(url);//连接到数据库
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from article where pid = 0");
while(rs.next()) {
System.out.println(rs.getString("cont"));
tree(conn,rs.getInt("id"), 1);
}
} catch(SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(stmt != null) {
stmt.close();
stmt = null;
}
if(conn != null) {
conn.close();
conn = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}