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

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.lryc.cn/news/2378395.html

相关文章:

  • Python爬虫-爬取百度指数之人群兴趣分布数据,进行数据分析
  • SEO长尾词与关键词优化实战
  • 机器学习-人与机器生数据的区分模型测试-数据处理1
  • HelloWorld
  • 令牌桶和漏桶算法使用场景解析
  • 轻量、优雅、高扩展的事件驱动框架——Hibiscus-Signal
  • SEO 优化实战:ZKmall模板商城的 B2C商城的 URL 重构与结构化数据
  • 2020CCPC河南省赛题解
  • 数字万用表与指针万用表使用方法及注意事项
  • 虚拟主播肖像权保护,数字时代的法律博弈
  • 【读代码】端到端多模态语言模型Ultravox深度解析
  • RabbitMQ工作流程及使用方法
  • Java 面向对象进阶:解锁多态、内部类与包管理
  • 算法:分治法
  • MySQL初阶:sql事务和索引
  • docker部署第一个Go项目
  • day27 python 装饰器
  • Visual Studio2022跨平台Avalonia开发搭建
  • css iconfont图标样式修改,js 点击后更改样式
  • 开源项目实战学习之YOLO11:12.4 ultralytics-models-sam-memory_attention.py源码分析
  • 【沉浸式求职学习day42】【算法题:滑动窗口】
  • LIIGO ❤️ RUST 12 YEARS
  • Linux基础开发工具二(gcc/g++,自动化构建makefile)
  • Linux zip、unzip 压缩和解压
  • muduo库TcpConnection模块详解——C++
  • Node.js 源码架构详解
  • 全局异常处理:如何优雅地统一管理业务异常
  • 分布式锁: Redis和ZooKeeper两种分布式锁对比
  • 动态规划-LCR 166.珠宝的最大价值-力扣(LeetCode)
  • JDBC实现模糊、动态与分页查询的详解