chap06 JSP访问数据库
发布时间:2021-06-06
发布时间:2021-06-06
jsp访问数据库ppt
第六章 JSP访问数据库
jsp访问数据库ppt
本章内容 如何链接数据库? JDBC ODBC
如何操作数据库? 使用PreparedStatement和CallableStatement 事务 使用厂商驱动进行数据库连接
jsp访问数据库ppt
JDBC简介 网站数据放在数据库内
前台 WEB服 务器JDBC
后台
数据库
如何能从页面访问到数据库中的内容呢?
JAVA提供了一套访问数据库的机制——JDBC。该机制
包含一系列的API,让JAVA代码可以直接连接到数据库 内,并对数据库中的数据进行添加、删除、查找、修 改等操作
jsp访问数据库ppt
JDBC简介 JDBC的API放在“java.sql”包内 包括以下类或接口 java.sql.Connection:负责连接数据库
java.sql.Statement:负责执行数据库 SQL 语句 java.sql.ResultSet:负责存放查询结果
jsp访问数据库ppt
JDBC简介 JDBC怎么知道系统采用的是什么数据库?SQL SERVER?
ORACLE? MY SQL? SYBASE?..... 针对不同类型的数据库,JDBC 机制中提供了"驱动程序"
的的概念。对于不同的数据库,程序只需要使用不同的 驱动
jsp访问数据库ppt
JDBC简介 驱动由数据库厂商提供,找起来很麻烦~有没有通用的
呢?
微软公司的 Windows 中,预
先设计了一个ODBC(Open Database Connectivity,开放数 据库互连)功能,由于 ODBC 是 微软公司的产品,因此它几乎 可以连接到所有在 Windows 平 台下运行的数据库,由它连接 到特定的数据库,不需要具体 的驱动。而 JDBC 就只需要连 接到 ODBC 就可以了6
JDBC-ODBC桥连接
jsp访问数据库ppt
建立ODBC数据源 ODBC怎么知道自己连接的是什么数
据库呢?
通过建立ODBC数据源,告诉ODBC其
连接数据库是什么, ODBC 支持连接 到各种数据库。如 Oracle、MySQL、 MSSQLServer 等
jsp访问数据库ppt
建立ODBC数据库 操作如下: 首先在控制面板中选择“管理工具”,双击“数据
源(ODBC)图标”
在"ODBC 数据源管理器"的
"系统 DSN"选项卡中单击 "添加"按钮
jsp访问数据库ppt
建立 ODBC 数据源 操作如下: 从弹出的"创建新数据源"窗口的数据源名称列表中选择
"Microsoft Acces Driver(*.mdb)" 并单击"完成"按钮
jsp访问数据库ppt
建立 ODBC 数据源 操作如下: 在弹出的"ODBC Microsoft Access 安装"窗口的"数据源名"
文本框输入自定义的数据源名称,然后点击"选择"按钮, 选择 Access 数据库所在的目录,得到的结果如图
1
jsp访问数据库ppt
JDBC操作 JDBC 的操作分为 4 个步骤: 通过 JDBC 连接到 ODBC,并获取连接对象 import java.sql.Connection; import java.sql.DriverManager; …… …… Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn = DriverManager.getConnection(“jdbc:odbc:DSSchool”); //DriverManager.getConnection(“URL”,”用户名”,”密码”)
注意,ACCESS2010以后的conn写法有变化 Connection conn =
DriverManager.getConnection("jdbc:odbc:DRIVER={Microsof t A
ccess Driver (*.mdb, *.accdb)};DBQ=C:\\School.mdb");
1
jsp访问数据库ppt
JDBC操作 使用 Statement 接口运行 SQL 语句 import java.sql.Statement; …… Statement stat = conn.createStatement(); stat.executeQuery(SQL 语句);//查询 或者 stat.executeUpdate(SQL 语句);//添加、删除或修改
1
jsp访问数据库ppt
JDBC操作 处理 SQL 语句运行结果,这和具体的操作有关,后面详
述 关闭数据库连接: stat.close(); conn.close();
1
jsp访问数据库ppt
添加数据 对数据库SCHOOL中的表T_STUDENT进行数据
添加
0032、冯江、男
int i = stat.executeUpdate(sql);
它返回一个整型,意思为这条 sql 语句执行受影 响的行数,即成功添加的条数
1
jsp访问数据库ppt
删除、修改数据 删除表T_STUDENT中学号为0032的记录
修改表T_STUDENT中,学号为0007的学生的性别,
更改为“女”
1
jsp访问数据库ppt
查询数据 查询所有女生的学号和姓名
查询格式:ResultSet rs = stat.executeQuery(sql); 查询到的结果放入 ResultSet (rs)中,实际上是一个小表格
怎么才能访问这个小表格呢? 游标
1
jsp访问数据库ppt
查询数据 游标 在 ResultSet 中一个可以移动的指针,它指向一行数据。 初始时指向第一行的前一行,实际上不指向任何数据。 rs.next()可以将游标移到下一行,它的返回值是一个布尔 类型,即如果下一行有数据则返回为 true,否则为 flase。 很明显,可以使用 rs.next()配上 while 循环来对结果进行 遍历
1
jsp访问数据库ppt
查询数据 游标 当游标指向某一行,可以通过 ResultSet 的 getXXX("列名") 方法得到这一行的某个数据,XXX 是该列的数据类型,可 以是 String,也可以是 int 等,但是所有类型的数据都可以 用 getString()方法获得。除了通过列名获得数据外,还可以 通过列的编号来获得 String stuno= rs.getString(“STUNO”); String stuno= rs.getString(1);
1
jsp访问数据库ppt
查询数据 关于游标的注意 游标的初始值并不是指向第 1 行数据,而是指向第 1 行
的前面那条数据。所以必须要运行一次 next()函数之后, 才能从开始取数据,如果强行取则会找不到该列而报错
从某一行中通过 getXXX()方法取数据每一列只能取一次,
超过一次,程序将会报错,如果需要重复使用某列数据, 可以先定义一个变量,将取出的数据赋予它,再重复使 用
1
jsp访问数据库ppt
PreparedStatement 数据库中的新增数据由用户指定的时候,如何处理? 例如,由用户指定学号、姓名、性别 解决方法:用三个变量,分别表示!
String sql = "INSERT INTO
T_STUDENT(STUNO,STUNAME,STUSEX) VALUES('" +stuno+"','"+stuname + "','"+stusex+"')"; 容易出错了 JSP提供了一个PreparedStatement接口来简化流程2
jsp访问数据库ppt
PreparedStatement PreparedStatement 是 Statement 的子接口,功能与
Statement 类似 它在 sql 语句中使用了?代替了需要插
入的参数 用 PreperedStatement 的 setString(n,参数)方法可以将第 n
个?用传进的参数代替。这样做增加了程序的可维护性, 也增加了程序的安全性
2
上一篇:日语五十音图发音表