用JDBC技术访问数据库
一、数据库知识
动态WEB实现主要是实现了与用户的交互,而交互性的实现由主要是借助于我们的数据库,与数据库连接主要是进行CRUD(create,read,update,delete)操作。
实现数据库的增、删、改、查
二、JDBC工作原理JDBC API
提供者:sun 公司(oracle)
内容:供程序员调用的接口与类,集成在java.sql 和javax.sql 包中:
==DriverManager 类
Connection 接口
PreparedStatement接口
ResultSet 接口 ==
DriverManager
提供者:sun 公司
作用:载入各种不同的JDBC 驱动
JDBC 驱动
提供者:==数据库厂商 ==
作用:负责连接各种不同的数据库
三、数据库工作模板
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
try {//1.加载JDBC驱动,添加jar包
==Class.forName(“JDBC驱动类”); ==
} catch (ClassNotFoundException e) {
System.out.println(“无法找到驱动类”);
}
try {
//2.获取数据库连接,JDBC URL用来标识数据库
conn=DriverManager.getConnection(JDBC URL,数据库用户名,密码);
//3.获取PreparedStatement对象,预编译sql语句,处理结果
String sql=“select * from 表名”;
pstmt=conn.prepareStatement(sql);
rs=pstmt.executeQuery(); //处理结果
while (rs.next()) {
int x = rs.getInt(“字段名1”);
String s = rs.getString(“字段名2”);
float f = rs.getFloat(“字段名3”);
}
} catch (SQLException e) {
e.printStackTrace();
} finally{//4.释放资源
try {
if(rs!=null){
rs.close();
}
if(pstmt!=null){
pstmt.close();
}
if(conn!=null){
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
四、纯java驱动的JDBC数据库连接步骤
1.注册数据库驱动(加载驱动)
Class.forName(驱动类),同时必须把数据库厂商提供的驱动包导入到项目中。
若未导入驱动包,则产生ClassNotFoundException
此处必须处理异常(原因自己查阅JDK帮助文档中的Class类的forName()方法)
2. 获取数据库连接
Connection conn=DriverManager.getConnection(url,dbname,dbpass);
3. 获取PreparedStatement对象,执行sql语句
PreparedStatement pstmt=conn.prepareStatement(sql语句);
查询:ResultSet rs=pstmt.executeQuery()//返回查询结果集
增删改:int lineNumber=pstmt.executeUpdate();//返回更新记录条数
4. 关闭资源(一定要)
try{
if(rs!=null)
rs.close();
if(pstmt!=null)
pstmt.close();
if(conn!=null)
conn.close();
}catch(SQLException e){
E,printStackTrace();
}
五、数据库URL与驱动类