当前位置: 首页 > news >正文

JSP链接MySQL8.0(Eclipse+Tomcat9.0+MySQL8.0)

所用环境

Eclipse

Tomcat9.0

MySQL8.0.21(下载:MySQL Community Server 8.0.21 官方镜像源下载 | Renwole)

mysql-connector-java-8.0.21(下载:MySQL :: Begin Your Download)

.NET Framework 4.5.2(下载:下载 .NET Framework 4.5.2 Offline Installer)

链接前配置

1、启动MySQL服务

win+r 唤出cmd控制台

输入 net start MySQL80 启动MySQL8.0服务

2、Eclipse配置好Tomcat之后在Servers文件夹中修改Catalina.properties文件

就它↓

将第108行尾部修改为 *.jar

3、在project中导入jdbc的jar包(mysql-connector-java-8.0.21.jar)并build path

按这个路径放

右击后这样选

4、在MySQL的Workbench中建库建表

下面例子中用的表的CREATE语句如下

CREATE TABLE `test`.`student` (
student_id VARCHAR(50) PRIMARY KEY,name VARCHAR(50) NOT NULL,gender ENUM('男', '女') NOT NULL,age INT CHECK (age > 0 AND age < 120),major VARCHAR(100),enrollment_date DATE,email VARCHAR(100) UNIQUE
);

建好之后自行添加数据

进行测试

测试jsp文件代码如下

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%><html>
<head>
<title>通过JSP打开数据表</title>
</head>
<body><%  try {  Class.forName("com.mysql.cj.jdbc.Driver");  //驱动程序名,与MySQL5.0不同String url = "jdbc:mysql://localhost:3306/test?serverTimezone=UTC"; //数据库名String username = "root";  //数据库用户名String password = "123456";  //数据库用户密码Connection conn = DriverManager.getConnection(url, username, password);  //连接状态Statement stmt = conn.createStatement();if(conn != null){  out.print("数据库连接成功!");  out.print("<br />");            //Statement //stmt = null;  ResultSet rs = null;  String sql = "SELECT *FROM student;";  //查询语句stmt = conn.createStatement();  rs = stmt.executeQuery(sql);  out.print("查询结果:");  out.print("<br />");  out.println("name"+"  "+"gender "+"  "+"age");  out.print("<br />");  while (rs.next()) {  out.println(rs.getString("name")+"   &nbsp  "+rs.getString("gender")+"  &nbsp "+rs.getInt("age")); //将查询结果输出out.print("<br />");  }  }else{  out.print("连接失败!");  }  }catch (Exception e) {        out.print("数据库连接异常!");  }  
%>   
</body>
</html>

连接成功页面显示如下

http://www.dtcms.com/a/196750.html

相关文章:

  • 西门子 Teamcenter13 Eclipse RCP 开发 1.2 工具栏 开关按钮
  • 在线教育本地化分发:代理IP实现区域访问控制与内容适配
  • MySQL表的约束(上)
  • 嵌入式学习笔记 - STM32定时器的输入通道与时钟源
  • Vue+Vite学习笔记
  • C语言查漏补缺
  • 2025年渗透测试面试题总结-安恒[实习]安全工程师(题目+回答)
  • 中级网络工程师知识点4
  • 灵光一现的问题和常见错误2
  • 芯片生态链深度解析(二):基础设备篇——人类精密制造的“巅峰对决”
  • 劳特巴赫trace32负载率测试
  • [YOLO模型](4)YOLO V3的介绍
  • 新的节能技术和一体化解决方案,推动工厂智能升级和产业转型
  • 开源RTOS(实时操作系统):nuttx 编译
  • MyBatis 核心组件源码分析
  • 车载诊断架构 --- 核心网关流控制机制需求
  • 一个指令,让任意 AI 快速生成思维导图
  • 【单机版OCR】清华TH-OCR v9.0免费版
  • Win11下轻松搭建wiki.js,Docker.desktop部署指南(mysql+elasticsearch+kibana+wiki.js)
  • 嘉立创EDA成图:文件管理
  • C++ 蓝桥 STEMA 真题模拟测试卷一
  • 全局异常处理:如何优雅地统一管理业务异常
  • Java 方法向 Redis 里操作字符串有什么需要注意的?​
  • PyTorch实现CrossEntropyLoss示例
  • AMD Vivado™ 设计套件生成加密比特流和加密密钥
  • Linux_ELF文件
  • 【Qt】Qt常见控件的相关知识点
  • Devin 编程智能体
  • Java求职面试:从核心技术到大数据与AI的场景应用
  • 玩转 AI · 思考过程可视化