JSP简单添加,查询功能代码

下面我将为您详细讲解“JSP简单添加、查询功能代码”的攻略。

准备工作

首先,您需要准备好以下环境:

  • JSP运行环境,如Tomcat
  • MySQL数据库

创建数据库

我们先创建一个名为“test”的数据库,并创建一个名为“user”的表,表结构如下:

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `age` int(11) NOT NULL,
  `gender` varchar(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

编写添加功能代码

接下来,我们来编写添加功能代码,首先需要创建一个添加页面。在Web应用程序中新建一个名为“add.jsp”的文件,并在其中添加以下代码:

<html>
<head>
    <title>添加用户</title>
</head>
<body>
    <h1>添加用户</h1>
    <%-- 提交表单 --%>
    <form action="addUser.jsp" method="post">
        <label for="name">姓名:</label>
        <input type="text" name="name" id="name" /><br />
        <label for="age">年龄:</label>
        <input type="text" name="age" id="age" /><br />
        <label for="gender">性别:</label>
        <input type="radio" name="gender" value="male" id="male" />男
        <input type="radio" name="gender" value="female" id="female" />女<br />
        <input type="submit" value="提交" />
    </form>
</body>
</html>

上述代码中,我们创建了一个表单,其中包含姓名、年龄、性别三个字段。表单的提交地址为“addUser.jsp”。

接下来我们需要编写“addUser.jsp”页面的逻辑代码,用于接收表单数据,并将数据插入数据库中。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<%
    request.setCharacterEncoding("UTF-8");

    // 获取表单数据
    String name = request.getParameter("name");
    int age = Integer.parseInt(request.getParameter("age"));
    String gender = request.getParameter("gender");

    // 连接数据库
    String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8";
    String user = "root";
    String password = "123456";
    Class.forName("com.mysql.jdbc.Driver");
    Connection conn = DriverManager.getConnection(url, user, password);

    // 插入数据
    String sql = "INSERT INTO user(name, age, gender) VALUES (?, ?, ?)";
    PreparedStatement pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, name);
    pstmt.setInt(2, age);
    pstmt.setString(3, gender);
    pstmt.executeUpdate();

    // 关闭连接
    pstmt.close();
    conn.close();

    // 跳转到添加成功页面
    response.sendRedirect("addSuccess.jsp");
%>

上面的代码中,我们首先获取表单数据,然后通过JDBC连接数据库,并将数据插入到user表中。

编写查询功能代码

接下来,我们来编写查询功能代码。同样地,我们需要创建一个查询页面。在Web应用程序中新建一个名为“query.jsp”的文件,并在其中添加以下代码:

<html>
<head>
    <title>查询用户</title>
</head>
<body>
    <h1>查询用户</h1>
    <%-- 提交表单 --%>
    <form action="queryUser.jsp" method="post">
        <label for="name">姓名:</label>
        <input type="text" name="name" id="name" /><br />
        <input type="submit" value="查询" />
    </form>
</body>
</html>

上述代码中,我们创建了一个表单,其中包含姓名字段。表单的提交地址为“queryUser.jsp”。

接下来我们需要编写“queryUser.jsp”页面的逻辑代码,用于接收表单数据,并从数据库中查询数据。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<%
    request.setCharacterEncoding("UTF-8");

    // 获取表单数据
    String name = request.getParameter("name");

    // 连接数据库
    String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8";
    String user = "root";
    String password = "123456";
    Class.forName("com.mysql.jdbc.Driver");
    Connection conn = DriverManager.getConnection(url, user, password);

    // 查询数据
    String sql = "SELECT * FROM user WHERE name LIKE ?";
    PreparedStatement pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, "%" + name + "%");
    ResultSet rs = pstmt.executeQuery();

    // 显示数据
    out.println("<table>");
    out.println("<tr>");
    out.println("<th>ID</th><th>姓名</th><th>年龄</th><th>性别</th>");
    out.println("</tr>");
    while (rs.next()) {
        int id = rs.getInt("id");
        String username = rs.getString("name");
        int age = rs.getInt("age");
        String gender = rs.getString("gender");

        out.println("<tr>");
        out.println("<td>" + id + "</td>");
        out.println("<td>" + username + "</td>");
        out.println("<td>" + age + "</td>");
        out.println("<td>" + gender + "</td>");
        out.println("</tr>");
    }
    out.println("</table>");

    // 关闭连接
    rs.close();
    pstmt.close();
    conn.close();
%>

上面的代码中,我们首先获取表单数据,然后通过JDBC连接数据库,并从user表中查询符合条件的记录,最后将查询结果输出到页面上。

示例说明

假设我们现在要添加一个名为“Tom”的用户,年龄为28岁,性别为男。

  1. 首先访问“add.jsp”页面。
  2. 在页面上填写姓名、年龄、性别等字段,点击“提交”按钮,提交表单。
  3. 系统将表单数据发送到“addUser.jsp”页面,并将数据插入到数据库中。
  4. 系统跳转到“addSuccess.jsp”页面,提示添加成功。

假设我们现在要查询所有名字中包含“T”的用户。

  1. 首先访问“query.jsp”页面。
  2. 在页面上填写姓名字段,输入“T”作为查询条件,点击“查询”按钮,提交表单。
  3. 系统将表单数据发送到“queryUser.jsp”页面,并从数据库中查询符合条件的记录。
  4. 系统将查询结果输出到页面上,以表格的形式呈现。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JSP简单添加,查询功能代码 - Python技术站

(0)
上一篇 2023年6月15日
下一篇 2023年6月15日

相关文章

  • 如何用120行Java代码写一个自己的区块链

    下面是详细讲解如何用120行Java代码写一个自己的区块链的攻略。 第一步:搭建基础框架 首先,我们需要创建一个名为Blockchain的类,代码如下: import java.util.ArrayList; public class Blockchain { ArrayList<Block> chain = new ArrayList<B…

    Java 2023年5月26日
    00
  • Mysql存储java对象实例详解

    MySQL是一种流行的关系型数据库,而Java是一种流行的编程语言。如果你正在使用Java编写应用程序,那么你可能需要在MySQL中存储Java对象实例。本文将详细介绍如何将Java对象存储到MySQL中的方法。 环境和实例准备 环境 操作系统:Windows 10 Java版本:1.8 MySQL版本:8.0 实例 我们将使用一个简单的Java类作为例子,…

    Java 2023年5月26日
    00
  • IDEA 连接数据库的实现方法

    下面是“IDEA 连接数据库的实现方法”的完整攻略及示例说明。 1. 使用JDBC连接数据库 1.1 引入JDBC依赖 在Maven的pom.xml文件中,添加MySQL或其他数据库的JDBC依赖。 例如,在连接MySQL时,可以添加如下依赖: <dependency> <groupId>mysql</groupId> &…

    Java 2023年6月1日
    00
  • 基于Java 数组内存分配的相关问题

    关于基于Java数组内存分配的相关问题,以下是详细的攻略: 1. Java数组内存分配概述 在Java中,数组是一种非常常见的数据结构,它由一些同类型的元素组成。我们可以通过数组来存储和操作多个相同类型的数据。Java数组内存分配的问题,实际上是与Java的内存管理机制有关的。 Java中的内存管理机制有两部分,一部分是Java虚拟机(JVM)自己的内存管理…

    Java 2023年5月26日
    00
  • java web图片上传和文件上传实例

    下面是关于“Java Web文件上传和图片上传实例”的攻略及示例。 一、文件上传和图片上传的区别 文件上传和图片上传本质上类似,都是将本地文件上传到服务器的某个文件夹中。但是,图片上传还需要进行图片预览和显示操作,所以相较于文件上传,图片上传多了一些处理操作。 二、Java Web实现文件上传和图片上传 在Java Web中,文件上传和图片上传的核心是使用M…

    Java 2023年5月19日
    00
  • MyBatis框架零基础快速入门案例详解

    MyBatis框架零基础快速入门攻略 什么是 MyBatis框架? MyBatis是一种开源的、轻量级的、基于Java的ORM框架。它使用XML或注释作为配置元数据,通过Java编程接口(API)操作关系型数据库。MyBatis可以映射Java对象和数据库记录,支持自定义SQL查询返回任意复杂的Java对象图,并且不会隐藏底层SQL的强大。 MyBatis框…

    Java 2023年5月19日
    00
  • Java利用完全二叉树创建大根堆和小根堆

    下面是详细讲解“Java利用完全二叉树创建大根堆和小根堆”的完整攻略。 创建大根堆和小根堆的概念 在创建堆的时候,需要将输入的数据元素想象成一颗完全二叉树。然后将这个完全二叉树转换为堆,转换之后的堆即为大根堆或小根堆。 大根堆:每个节点的值都大于或等于它的子节点值。 小根堆:每个节点的值都小于或等于它的子节点值。 创建大根堆和小根堆的步骤 将输入的元素插入到…

    Java 2023年5月26日
    00
  • 基于@JsonSerialize和@JsonInclude注解使用方法

    这里为您详细讲解关于“基于@JsonSerialize和@JsonInclude注解使用方法”的完整攻略。 什么是@JsonSerialize注解和@JsonInclude注解? 在介绍使用方法之前,我们先来简单了解一下这两个注解的概念。 @JsonSerialize注解是用于指定Java对象序列化为JSON数据的类或者具体实例的序列化方式。 @JsonIn…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部