JSP复习笔记——第10章 连接数据库之JDBC简介与基本使用
    动态web的最大特点--> 可以操作数据库 
JSP属于动态web程序—> JDBC去操作数据库 
JDBC本身是Java连接数据库的一个标准 
使用数据库之中,可以发现,对数据库的处理由数据库管理系统去操作 
JDBC:是JAVA操作数据库的方法 
ODBC:是微软的数据库操作 
JDBC-ODBC桥接方式:JDBC-ODBC是在JDK中由SUN本身开发出来的一套数据库访问操作,在JDBC-ODBC桥接中,它的各种操作API都是最新的,但性能较低,使用ODBC提供的数据库连接技术访问数据库,在开发中此方式肯定不用,因为性能低 
JDBC驱动程序:有各个厂商按JDBC标准提供 
建立好数据库和表后,要配置数据源 
数据源名称为程序中真正要使用到的名称: 
ODBC的基本原理: 
通过一个数据源名称-->找到数据库 
为数据库起了一个别名—>程序通过别名访问数据库 
即:程序只任名称,不任数据库 
JDBC-ODBC数据库连接驱动程序是由SUN提供的,为:sun.jdbc.odbc.JdbcOdbcDriver 
操作数据库使用以下两个主要接口: 
? statement 
? preparedStatement 
使用statement可以向数据库中执行SQL语句 
SQL两大操作 
? 更新数据:executeUpdate() 
? 查询数据:executeQuery() 
更新数据库的主要步骤: 
加载驱动程序-->打开连接Connection-->操作statement-->关闭
Java代码 
1.<%@ page contentType="text/html;charset=gb2312"%>   
2.<%@ page import="java.sql.*"%>   
3.<%!   
4.    // 定义数据库驱动程序   
5.    String DBDRIVER = "sun.jdbc.odbc.JdbcOdbcDriver" ;   
6.    // 定义数据库连接地址   
7.    String DBURL = "jdbc:odbc:sky" ;   
8.  
9.    // 定义数据库连接对象,属于java.sql包中的接口   
10.    Connection conn = null ;   
11.  
12.    // 定义Statement对象,用于操作数据库   
13.    Statement stmt = null ;   
14.  
15.    // 定义一字符串变量,用于保存SQL语句   
16.    String sql = null ;   
17.%>   
18.<%   
19.    // 1、加载驱动程序   
20.    try {   
21.        Class.forName(DBDRIVER) ;   
22.    } catch(Exception e) {   
23.        // 此处使用out.print是处于演示目的,在实际开发中所有的错误消息,绝对不能够通过out.print打印,否则会存在安全问题   
24.        out.println("数据库驱动程序加载失败!!!") ;   
25.    }   
26.  
27.    // 2、连接数据库   
28.    try {   
29.        conn = DriverManager.getConnection(DBURL) ;   
30.    } catch(Exception e) {   
31.        out.println("数据库连接失败!!!") ;   
32.    }   
33.  
34.    // 3、操作数据库   
35.    // 通过Connection对象实例化Statement对象   
36.    try {   
37.        stmt = conn.createStatement() ;   
38.        // 为sql变量赋值   
39.        // 插入语句   
40.        sql = "INSERT INTO person (name,password,age) VALUES (darkness,'wind',22)" ;   
41.        // 更新语句   
42.        // sql = "UPDATE person SET name='wind',password='darkness' WHERE id=3" ;   
43.        // 按ID删除记录   
44.        // sql = "DELETE FROM person WHERE id=4" ;   
45.        // 通过Statement对象执行此SQL语句   
46.        stmt.executeUpdate(sql) ;   
47.    } catch(Exception e) {   
48.        out.println("操作数