Java-Web应用开发实用教程-龚永罡-第6章-JSP数据库应用开发新课件.ppt
《Java-Web应用开发实用教程-龚永罡-第6章-JSP数据库应用开发新课件.ppt》由会员分享,可在线阅读,更多相关《Java-Web应用开发实用教程-龚永罡-第6章-JSP数据库应用开发新课件.ppt(102页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、在线教务辅导网:在线教务辅导网:http:/ 更多课程配套课件资源请访问在线教务辅导网更多课程配套课件资源请访问在线教务辅导网2023/2/81第第6章章 JSP数据库应用开发数据库应用开发2023/2/82l数据库是一般Web应用必不可少的部分,Web应用的数据都需要保存在数据库里。l常见的大型数据库系统主要包括Oracle,SQL Server2000/2005,MySQL等。2023/2/83第6章 JSP数据库应用开发6.1安装和配置MySQL数据库6.2用JDBC访问MySQL数据库 6.3数据源(DataSource)6.4 JSP数据库应用示例2023/2/846.1安装和配置M
2、ySQL数据库6.1.1 MySQL数据库基础MySQL 是一个真正的多用户、多线程SQL数据库服务器 MySQL具有小巧、功能齐全、查询迅捷等优点 MySQL 对于一般中小型,甚至大型应用都能够胜任。2023/2/85和数据库相关的几个基本概念 1.数据类型和数据表 用于保存数据记录的结构被称为数据表。而每一条数据记录则是由更小的数据对象,即数据类型组成。Database Table Record Datatype 2023/2/86(1)MySQL 数据类型 MySQL 数据库提供了多种数据类型,其中较为常用的几种如下:CHAR(M)CHAR数据类型用于表示固定长度的字符串,可以包含最多达
3、255个字符。其中M代表字符串的长度。2023/2/87(1)MySQL 数据类型VARCHAR(M)VARCHAR是一种比CHAR更加灵活的数据类型,同样用于表示字符数据,但是VARCHAR可以保存可变长度的字符串。其中M代表该数据类型所允许保存的字符串的最大长度2023/2/88(1)MySQL 数据类型INT(M)Unsigned INT数据类型用于保存从-2147483647 到2147483648范围之内的任意整数数据。如果用户使用Unsigned选项,则有效数据范围调整为0-4294967295。2023/2/89(1)MySQL 数据类型FLOAT(M,D)FLOAT数据类型用于
4、表示数值较小的浮点数据,可以提供更加准确的数据精度。其中,M代表浮点数据的长度(即小数点左右数据长度的总和),D表示浮点数据位于小数点右边的数值位数。DATE DATE数据类型用于保存日期数据,默认格式为YYYY-MM-DD。2023/2/810(1)MySQL 数据类型TEXT/BLOB TEXT和BLOB数据类型可以用来保存255 到65535个字符,如果用户需要把大段文本保存到数据库内的话,可以选用TEXT或BLOB数据类型。TEXT和BLOB这两种数据类型基本相同,唯一的区别在于TEXT不区分大小写,而BLOB对字符的大小写敏感。2023/2/811(1)MySQL 数据类型SET S
5、ET数据类型是多个数据值的组合例如:transport SET(truck,wagon)NOT NULL;ENUM ENUM数据类型和SET基本相同,唯一的区别在于ENUM只允许选择一个有效数据值。2023/2/812(2)数据记录 一组经过声明的数据类型就可以组成一条记录。多条记录组合在一起就构成了数据表的基本结构。2023/2/813(3)数据表 在MySQL数据库中创建新的数据表:mysql CREATE TABLE test(name VARCHAR(15),email VARCHAR(25),phone_number INT,ID INT NOT NULL AUTO_INCREMEN
6、T,PRIMARY KEY(ID);2023/2/814主要的参数选项 Primary Key 具有Primary Key限制条件的字段用于区分同一个数据表中的不同记录。Auto_Increment 具有Auto_Increment限制条件的字段值从1开始,每增加一条新记录,值就会相应地增加1。NOT NULL NOT NULL限制条件规定用户不得在该字段中插入空值。2023/2/815以数据表作为操作对象的命令 显示数据表命令mysql show tables;该命令将会列出当前数据库下的所有数据表。显示字段命令 mysql show columns from tablename;该命令将会
7、返回指定数据表的所有字段和字段相关信息。2023/2/816(4)数据操作 对MySQL数据库中数据的操作可以划分为四种不同的类型,分别是添加添加、删除删除、修改修改和查询查询添加记录 使用INSERT命令向数据库中添加新的记录 mysql INSERT INTO test VALUES(John,5554321,NULL);2023/2/817(4)数据操作查询数据使用SELECT命令进行数据的查询。例如:mysql SELECT*FROM test WHERE(name=John);删除数据 使用DELETE命令。例如:mysql DELETE FROM test WHERE(name=)
8、;2023/2/818(4)数据操作修改数据使用UPDATE命令。例如:mysql UPDATE test SET name=Mary WHERE name=John;2023/2/8196.1.2 安装MySQL数据库MySQL数据库安装程序可以在MySQL的官方(http:/)网站下载2023/2/8202023/2/821下载后的程序为一个压缩文件mysql-5.0.67-win32.zip,解压缩该文件,然后双击其中的Setup.exe文件,启动MySQL安装向导按照向导指示就可以完成安装了2023/2/8226.1.3 配置MySQL数据库安装完成后,可以选择Configure th
9、e MySQL Server now来启动MySQL的设置向导 一般选择Standard Configuration(标准配置模式)。2023/2/8232023/2/824单击Next后弹出图6.11所示的对话框,选择Install As Windows Service选项,Service Name可以自己选择和设置,选中Launch the MySQL Server automatically(自动启动MySQL服务)。在图6.11所示的对话框中单击Next按钮后,弹出图6.12所示的对话框,可进行root用户密码的设置,此处设为123,设置完成后单击Next按钮,然后单击Execute即
10、可开始MySQL的配置。2023/2/825图6.12设置root用户的密码图6.11 作为Windows服务安装2023/2/8266.1.4 测试开始-所有程序-MySQL-MySQL Server-MySQL Command Line Client来启动MySQL的命令行管理工具。输入配置阶段设置的密码后进入命令行管理工具界面 2023/2/8271.新建数据库及数据表测试 可以用create database语句建立一个新的数据库MyData,具体语句如下:mysqlcreate database MyData;可以通过use语句选择其为默认数据库:mysqluse MyData202
11、3/2/828用createtable语句建立新的数据表,具体语句如下:mysqlcreate table user-(name char(20),-password char(20),-email char(100),-user_id char(20),-primary key(user_id);可以用“desc user;”命令查看数据表结构2023/2/8292023/2/8302.增加数据用insert into语句在表中增加数据。代码如下:insert into user(name,password,email,user_id)values(Mary,123,M,0001);如果插入
12、的记录为所有字段都赋值,则可以省略字段名,简写成如下语句:insert into user values(Mary,123,M,0001);2023/2/8312023/2/8323.修改数据用update语句修改数据表中的数据,具体代码如下:update user set password=1234656 where user_id=0001;可以用select*from user语句查看user表中的所有数据。2023/2/8332023/2/8344.删除数据用delete语句修改数据表中的数据,具体代码如下:delete from user where user_id=0001;此外可
13、以用不带条件的delete语句或truncate table语句删除表中的所有数据,即:delete from user;或:truncate table user;2023/2/8352023/2/8366.2用JDBC访问MySQL数据库JDBC是一种Java数据库连接API,它为Java程序员提供了一种在Java代码中访问关系数据库的标准方法。JDBC可以为多种关系数据库提供统一统一访问,它由一组用Java语言编写的类和接口组成。2023/2/837一个Java程序要访问数据库,需通过以下几步来完成:第一,打开数据库连接;第二,建立语句对象;第三,通过该语句对象将SQL语句传送给数据库,
14、进行数据库操作;第四,获取结果及有关结果集的信息。2023/2/8386.2.2 JDBC.ODBC桥JDBC.ODBC桥是一个JDBC驱动程序,它通过将JDBC操作转换为ODBC操作来实现。对ODBC,它像是通常的应用程序,桥为所有对ODBC可用的数据库实现JDBC。由于ODBC被广泛地使用,该桥的优点是让JDBC能够访问几乎所有的数据库。桥作为包sun.jdbc.odbc与JDK一起自动安装,无需特殊配置。2023/2/839建立连接前,必须将桥驱动程序类sun.jdbc.odbc.jdbcodbcdriver添加到名为jdbc.drivers的java.lang.system属性中,或用
15、java类加载器将其显式地加载。可以用以下语句进行桥的显式加载:class.forname(sun.jdbc.odbc.jdbcodbcdriver);加载时,ODBC驱动程序将创建它自己的实例,同时在JDBC驱动程序管理器进行注册。2023/2/840桥驱动程序使用ODBC子协议。该子协议的URL为以下的形式:jdbc:odbc:=*例如:jdbc:odbc:sybase jdbc:odbc:mydb;uid=me;pwd=secret jdbc:odbc:ora123;cachesize=3002023/2/8416.2.3 JDBC建立数据库连接示例使用JDBC连接MySQL数据库需要首
16、先在http:/ driverName=com.mysql.jdbc.Driver;/数据库用户名String userName=root;/密码String userPwd=123;/数据库名String dbName=MyData;/表名String tableName=user;/连接字符串String url=jdbc:mysql:/localhost/+dbName+?user=+userName+&password=+userPwd;Class.forName(com.mysql.jdbc.Driver).newInstance();java.sql.Connection conn
17、=DriverManager.getConnection(url);out.print(数据库连接成功!);out.print();java.sql.Statement statement=conn.createStatement();String sql=SELECT*FROM +tableName;java.sql.ResultSet rs=statement.executeQuery(sql);2023/2/845/输出每一个数据值out.print(编号 );out.print(|);out.print(用户名);out.print(|);out.print(Email);out.pr
18、int();while(rs.next()out.print(rs.getString(4)+);out.print(|);out.print(rs.getString(1)+);out.print(|);out.print(rs.getString(3);out.print();out.print();out.print(数据库操作成功!);rs.close();statement.close();conn.close();%2023/2/8466.2.4 JDBC建立数据库连接方法详解JDBC由一组Java类库和接口库组成,涉及到的Java标准包包括java.sql.*和javax.sql
19、.*。一般的数据库厂商如Oracle,Microsoft,MySQL等一般会提供专用的JDBC数据库驱动程序,以简化开发。各种JDBC驱动程序可到数据库厂商的网站下载。2023/2/847JDBC主要的接口和核心类包括:Driver接口DriverManager类Connection类Statement类PreparedStatement类ResultSet类2023/2/8481.Driver接口在使用Driver接口前,Java和JSP程序必须使用import语句导入java.sql.*包。如果使用JDBC驱动程序,可以这样加载:Class.forName(jdbcdriver_class
20、name).newInstance();如,对MySQL数据库,加载语句如下:Class.forName(com.mysql.jdbc.Driver).newInstance();如果使用JDBC/ODBC桥驱动程序,可以这样加载:Class.forName(sun.jdbc.odbc.JdbcOdbcDriver).newInstance();2023/2/8492.DriverManager类DriverManager类是驱动程序管理类,负责管理JDBC驱动程序。DriverManager类提供的getConnection函数所返回的Connection接口类十分重要如上例中的代码:Str
21、ingurl=jdbc:mysql:/localhost/+dbName+?user=+userName+&password=+userPwd;Connectionconn=DriverManager.getConnection(url);2023/2/8502.DriverManager类(续)调用Connection函数可返回一个数据库连接。该函数有3种不同的函数重载形式 static Connection getConnection(String url):和一个通过url指定的数据库建立连接。static Connection getConnection(String url,Prop
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java Web 应用 开发 实用教程 龚永罡 JSP 数据库 新课
限制150内