JSP 教程 之 JSP 连接数据库 1

简介: **JSP连接MySQL数据库教程**:确保有JDBC驱动(如mysql-connector-java),将其添加到Tomcat的lib目录。对于MySQL 8+,驱动类改为`com.mysql.cj.jdbc.Driver`,URL示例:`jdbc:mysql://localhost:3306/baidu?useSSL=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8`。创建数据库`baidu`和表`websites`,含站点信息字段,然后插入测试数据。

JSP 教程 之 JSP 连接数据库 1

JSP 连接数据库

本教程假定您已经了解了 JDBC 应用程序的工作方式。在您开始学习 JSP 数据库访问之前,请访问 Java MySQL 连接 来设置相关驱动及配置。

注意:

你可以下载本站提供的 jar 包:

MySQL 5 版本:mysql-connector-java-5.1.39-bin.jar

MySQL 8 版本:mysql-connector-java-8.0.19.jar

下载后把 mysql-connector-java-<对应版本>-bin.jar 拷贝到 tomcat 下 lib 目录。

MySQL 8.0 以上版本的数据库连接有所不同:

1、com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver。

MySQL 8.0 以上版本不需要建立 SSL 连接的,需要显示关闭。

最后还需要设置 CST。

加载驱动与连接数据库方式如下:

<sql:setDataSource var="snapshot" driver="com.mysql.cj.jdbc.Driver"
url="jdbc:mysql://localhost:3306/baidu?useSSL=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
user="root" password="12345"/>

从基本概念下手,让我们来创建一个简单的表,并在表中创建几条记录。

创建测试数据

接下来我们在 MySQL 中创建 baidu 数据库,并创建 websites 数据表,表结构如下:

CREATE TABLE websites (
id int(11) NOT NULL AUTO_INCREMENT,
name char(20) NOT NULL DEFAULT '' COMMENT '站点名称',
url varchar(255) NOT NULL DEFAULT '',
alexa int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',
country char(10) NOT NULL DEFAULT '' COMMENT '国家',
PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
插入一些数据:

INSERT INTO websites VALUES ('1', 'Google', 'https://www.google.cm/', '1', 'USA'), ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), ('3', '百度', 'http://www.baidu.com', '5892', ''), ('4', '微博', 'http://weibo.com/', '20', 'CN'), ('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
机器学习/深度学习 编解码 算法
【YOLO系列】YOLOv1论文超详细解读(翻译 +学习笔记)
【YOLO系列】YOLOv1论文超详细解读(翻译 +学习笔记)
2346 0
【YOLO系列】YOLOv1论文超详细解读(翻译 +学习笔记)
创造与魔法脚本,炉石传说脚本,碧蓝航线脚本开源代码
主脚本包含三个游戏自动化模块:创造与魔法(资源采集/任务)、炉石传说(自动天梯)、碧蓝航线(委托/战斗)
|
缓存 应用服务中间件 PHP
502错误是nginx返回的吗(502错误和nginx有关系吗)
本文详细介绍了Nginx出现502 Bad Gateway错误的原因及解决方法,包括缓冲区错误、Header过大和PHP-CGI进程不足等问题,并提供了增大缓冲区、调整Header大小及增加PHP-CGI进程数量的具体步骤。此外,还解释了502错误的含义及其可能原因,如上游服务器故障、网络故障和配置错误,并给出了检查上游服务器、代理配置及联系网络管理员等多种解决方案。以上内容仅供参考,具体操作需根据实际情况调整。
4472 4
|
存储 Python
Python中的多进程通信实践指南
Python中的多进程通信实践指南
213 0
生物塑料与可持续材料:环保材料的创新与应用
【9月更文挑战第21天】生物塑料作为环保材料的重要代表,以其可降解、低污染和可再生等特性,在解决全球环境问题中发挥着重要作用。通过技术创新和市场拓展,生物塑料将在更多领域得到应用,为实现可持续发展和环境保护贡献力量。让我们携手共进,推动生物塑料与可持续材料的创新与应用,共同守护我们的地球家园。
341 13
Excel如何使用VBA操作引用其它工作簿中的单元格
Excel引用其它工作簿中的单元格的值及使用VBA操作
|
分布式计算 大数据 Java
Scala 入门指南:从零开始的大数据开发
Scala 入门指南:从零开始的大数据开发
单模、多模能混合使用吗?这篇给您讲明白!
单模、多模能混合使用吗?这篇给您讲明白!
574 5
|
机器学习/深度学习 人工智能 自然语言处理
探索深度学习的未来:从模型架构到应用场景
在信息技术飞速发展的时代,深度学习作为人工智能的核心领域正不断推动科技前沿。本文将探讨深度学习的最新发展趋势,包括模型架构的创新和实际应用场景的拓展。同时,我们将分析当前面临的挑战以及未来可能的发展方向,旨在为读者提供一个全面的视角,了解这一充满潜力的技术领域。
546 27
|
人工智能 并行计算 PyTorch
极智AI | 教你tensorrt实现mish算子
本文介绍了使用 tensorrt 实现 mish 算子的方法。
359 1