Servlet 数据库访问

这篇具有很好参考价值的文章主要介绍了Servlet 数据库访问。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

测试数据

访问数据库


前言

Servlet 数据库访问之前,Java MySQL 连接设置相关驱动及配置。

测试数据

Servlet 数据库访问,JavaEE,servlet,tomcat,mysql,数据库,idea

-- 创建表
CREATE TABLE `websites` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `name` CHAR(20) NOT NULL DEFAULT '' COMMENT '站点名称',
  `url` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '网址',
  `alexa` INT(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',
  `country` CHAR(10) NOT NULL DEFAULT '' COMMENT '国家',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- 插入数据
INSERT INTO `websites` (`name`, `url`, `alexa`, `country`) VALUES
('Google', 'https://www.google.com/', 1, 'USA'),
('淘宝', 'https://www.taobao.com/', 13, 'CN'),
('q', 'http://www.runoob.com', 5892, ''),
('微博', 'http://weibo.com/', 20, 'CN'),
('Facebook', 'https://www.facebook.com/', 3, 'USA');

访问数据库

下面的实例演示了如何使用 Servlet 访问 RUNOOB 数据库。

package com.runoob.test;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;

/**
* Servlet implementation class DatabaseAccess
*/
@WebServlet("/DatabaseAccess")
    public class DatabaseAccess extends HttpServlet {
        private static final long serialVersionUID = 1L;
        // JDBC 驱动名及数据库 URL
        static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
        static final String DB_URL = "jdbc:mysql://localhost:3306/RUNOOB";

        // 数据库的用户名与密码,需要根据自己的设置
        static final String USER = "root";
        static final String PASS = "123456";
        /**
* @see HttpServlet#HttpServlet()
*/
        public DatabaseAccess() {
            super();
            // TODO Auto-generated constructor stub
        }


        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            Connection conn = null;
            Statement stmt = null;
            // 设置响应内容类型
            response.setContentType("text/html;charset=UTF-8");
            PrintWriter out = response.getWriter();
            String title = "Servlet Mysql 测试";
            String docType = "<!DOCTYPE html>\n";
            out.println(docType +
                        "<html>\n" +
                        "<head><title>" + title + "</title></head>\n" +
                        "<body bgcolor=\"#f0f0f0\">\n" +
                        "<h1 align=\"center\">" + title + "</h1>\n");
            try{
                // 注册 JDBC 驱动器
                Class.forName("com.mysql.jdbc.Driver");

                // 打开一个连接
                conn = DriverManager.getConnection(DB_URL,USER,PASS);

                // 执行 SQL 查询
                stmt = conn.createStatement();
                String sql;
                sql = "SELECT id, name, url FROM websites";
                ResultSet rs = stmt.executeQuery(sql);

                // 展开结果集数据库
                while(rs.next()){
                    // 通过字段检索
                    int id  = rs.getInt("id");
                    String name = rs.getString("name");
                    String url = rs.getString("url");

                    // 输出数据
                    out.println("ID: " + id);
                    out.println(", 站点名称: " + name);
                    out.println(", 站点 URL: " + url);
                    out.println("<br />");
                }
                out.println("</body></html>");

                // 完成后关闭
                rs.close();
                stmt.close();
                conn.close();
            } catch(SQLException se) {
                // 处理 JDBC 错误
                se.printStackTrace();
            } catch(Exception e) {
                // 处理 Class.forName 错误
                e.printStackTrace();
            }finally{
                // 最后是用于关闭资源的块
                try{
                    if(stmt!=null)
                        stmt.close();
                }catch(SQLException se2){
                }
                try{
                    if(conn!=null)
                        conn.close();
                        }catch(SQLException se){
                    se.printStackTrace();
                }
                }

                }

                    /**
                    * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
                    */
                    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                    // TODO Auto-generated method stub
                    doGet(request, response);
                }
                }

现在调用这个 Servlet,输入链接:http://localhost:8080/Tomcat部署的项目名/DatabaseAccess,将显示以下响应结果:

Servlet 数据库访问,JavaEE,servlet,tomcat,mysql,数据库,idea文章来源地址https://www.toymoban.com/news/detail-538177.html

到了这里,关于Servlet 数据库访问的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【JavaEE】Tomcat的安装和使用、创建Mevan项目使用Servlet写一个程序

    目录 前言 一、Tomcat的下载和安装 二、写一个简单的Servlet项目 1、创建一个Maven项目 2、引入依赖  3、创建目录   4、编写Servlet代码。 5、打包程序 6、将程序部署到Tomcat上 7、验证程序运行结果  三、在IDEA上安装Smart Tomcat插件 四、Servlet中的一些常见错误 我我们制作一个网站

    2024年02月17日
    浏览(48)
  • 基于Spring注解 + MyBatis + Servlet 实现数据库交换的小小Demo

    配置数据库连接信息 db.properties 配置web.xml 配置logback.xml配置文件 配置applicationContext.xml 里面的bean 配置myBatis核心配置文件mybatis-config.xml 创建实体类对象User 创建LoginServlet响应前端的数据 创建UserService 接口 创建UserMapper接口 创建UserServiceImpl 接口实现类 按照这样的方式进行拼接

    2024年02月02日
    浏览(85)
  • 【JAVA】Eclipse+MYSQL数据库+JSP+基础Servlet开发JavaWeb学生信息管理系统

    目录 前言 一、搭建环境  二、功能实现、 1、   登陆界面 注册按钮 2、学生信息管理系统主界面 3、dao包  4、用户的信息展示,添加,删除,修改功能(只展示添加代码) 5、学生的信息展示,添加,删除,修改功能(只展示添加代码) 6、成绩的信息展示,添加,删除,修

    2024年02月05日
    浏览(65)
  • 表白墙完善(数据库,前端,后端Servlet),再谈Cookie和Session。以及一个关于Cookie的练习小程序

    目录 表白墙引入数据库  再谈Cookie和session 得到Cookie ​编辑 设置Cooie 使用Cookie编写一个登入的小界面 1.先引入数据库的依赖(驱动包),5.1.49 pom.xml中,在之前的两个之前,再去添加一个 2.创建本地的数据库 3.之前的代码中有一段可以删掉了 这个代码需要删除,因为我们已

    2024年02月08日
    浏览(57)
  • java servlet 农机租赁网站系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

    一、源码特点     java servlet  农机租赁网站系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助 系统采用 serlvet+dao+bean 模式开发 ,系统具有完整的源代码和数 据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用

    2024年02月02日
    浏览(51)
  • java 宠物在线商城系统Myeclipse开发mysql数据库web结构jsp编程servlet计算机网页项目

    一、源码特点     java 宠物在线商城系统是一套完善的java web信息管理系统 servlet+dao+bean mvc模式,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S 模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。 java 宠物

    2024年02月20日
    浏览(45)
  • java 课程签到管理系统Myeclipse开发mysql数据库web结构jsp编程servlet计算机网页项目

    一、源码特点     java 课程签到管理系统是一套完善的java web信息管理系统 采用serlvet+dao+bean,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。 java 课程签

    2024年02月19日
    浏览(42)
  • JavaEE & Servlet的API详解

    Servlet的API详解O(∩_∩)O~: 对于Tomcat服务器的代码实现,就不做讲解了,本质上就是一个TCP服务器,感兴趣的可以去了解! 接下来就是Servlet的API(有很多很多) 主要就是三个重点类: HttpServlet HttpServletRequest HttpServletResponse 而后面两个类,只要你熟悉HTTP协议,我想你也会知道

    2024年02月07日
    浏览(37)
  • 【JavaEE初阶】Servlet (三)MessageWall

    在我们之前博客中写到的留言墙页面,有很严重的问题:(留言墙博客) 如果刷新页面/关闭页面重开,之前输入的消息就不见了. 如果一个机器上输入了数据,第二个机器上是看不到的. 针对以上问题,我们的解决思如如下: 让服务器来存储用户提交的数据,由服务器保存. 当有新的浏览

    2024年02月14日
    浏览(38)
  • 【Servlet学习二】Servlet原理(Tomcat)&& ServletAPI

    目录 🌟一、Servlet运行原理 🌈1、Servlet的执行原理(重点) 🌈2、Tomcat伪代码的简单理解 2.1  Tomcat初始化流程 2.2  Tomcat处理请求流程 2.3 Servlet 的 service 方法的实现 🌟二、Servlet API 详解 1、HttpServlet 2、HttpServletRequest 3、HttpServletResponse 面试题:请求转发与请求重定向的区别?

    2024年02月12日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包