知识回顾:
主要步骤
- 同数据库建立连接
- 向数据库发送SQL语句
- 处理从数据库返回的结果
优点
- JDBC与ODBC十分相似,便于软件开发人员理解;
- JDBC使软件开发人员从复杂的驱动程序编写工作中解脱出来,可以完全专著与业务逻辑的开发;
- JDBC支持多种关系型数据库,大大增加了软件的可移植性;
- JDBC API是面向对象的,软件开发人员可以将常用的方法进行二次封装,从而提高代码的重用性。
缺点
- 通过JDBC访问数据库时速度将受到一定影响;
- 虽然JDBC API是面向对象的,但通过JDBC访问数据库依然是面向关系的;
- JDBC提供了对不同厂家的产品的支持,这将对数据源带来影响。
import java.sql.DriverManager;
import java.sql.ResultSet;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
public class TestJDBC {
public static void main(String[] args)
{
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/school?user=root&password=root";
Connection connection = null;
try{
Class.forName(driver).newInstance();
connection = (Connection)DriverManager.getConnection(url);
Statement statement = (Statement) connection.createStatement();
ResultSet res = statement.executeQuery("select count(*) rCount from t_student");
if(res.next()) {
System.out.println(res.getInt("rCount"));
}
//res=statement.executeQuery("select * from t_student");
//res.last();
//System.out.println(res.getRow());
res=statement.executeQuery("select * from t_student");
while(res.next())
{
String no = res.getString("STUNO");
String name = res.getString("STUNAME");
String sex = res.getString("STUSEX");
System.out.println("no:"+no+" name:"+name +" sex:"+sex);
}
res.close();
statement.close();
connection.close();
}
catch(Exception ex)
{
System.out.println(ex.toString());
}
}
}