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日

相关文章

  • Java通过导出超大Excel文件解决内存溢出问题

    当处理超大规模的Excel文件时,Java很容易发生内存溢出的问题。这时候,最好的解决方案之一是通过导出Excel文件来减小内存使用量。以下是详细的攻略: 1. 使用Apache POI库 Apache POI是一个Java库,它提供了对许多Microsoft Office格式文件(如Excel、Word和PowerPoint)的读取和写入能力。在处理超大规…

    Java 2023年5月19日
    00
  • Spring Boot之FilterRegistrationBean-自定义Filter详解

    下面是对于“Spring Boot之FilterRegistrationBean-自定义Filter详解”的完整攻略。 什么是FilterRegistrationBean? FilterRegistrationBean是Spring提供的一个Bean,用于将Filter(过滤器)注册到Servlet容器中的过程中进行拦截,进而实现自定义Filter。 如何使…

    Java 2023年5月31日
    00
  • Java web实现购物车案例

    以下是“Java web实现购物车案例”的完整攻略: 1. 准备工作 首先,我们需要一些工具来实现Java web开发。具体来说,需要安装并配置以下软件:* JDK(Java Development Kit)* Tomcat服务器* Eclipse开发环境* MySQL数据库 2. 数据库设计 购物车需要记录商品和购买数量等信息,因此我们需要在MySQL数据…

    Java 2023年6月15日
    00
  • Java开发中常用记录

    关于”Java开发中常用记录”的完整攻略,我会从以下几个方面进行详细讲解: 主要记录内容 在Java开发中,常用的记录内容有:日志信息、异常信息、性能统计、代码执行路径等。这些信息对于问题排查、性能优化等方面非常有帮助。 常用记录工具 Java开发中常用的记录工具有:log4j、logback、java.util.logging等。这些工具可以帮助我们方便地…

    Java 2023年5月30日
    00
  • Java 获取当前类名和方法名的实现方法

    获取当前类名和方法名是Java编程中常用的操作,有时我们需要在程序中获取当前正在执行的类和方法的信息。下面是Java获取当前类名和方法名的几种实现方法。 通过StackTraceElement获取 StackTraceElement类提供了获取栈帧信息的方法。栈帧是一个包含方法调用、局部变量和操作数栈等信息的数据结构,它代表了一个方法正在执行时在虚拟机栈中的…

    Java 2023年5月26日
    00
  • Java StackTraceElement实例代码

    接下来我将为你详细讲解“Java StackTraceElement实例代码”的完整攻略。 什么是StackTraceElement 在Java程序中,当出现异常时,Java虚拟机会在控制台上打印错误堆栈信息,其中包含了程序执行时所调用方法的信息。Java的StackTraceElement类可以获取方法执行的堆栈跟踪信息,包括方法名、文件名、行数等。 语法…

    Java 2023年5月23日
    00
  • Java实现基于token认证的方法示例

    我来为您讲解“Java实现基于token认证的方法示例”的完整攻略。 什么是token认证 Token认证是现在比较流行的Web应用程序认证方法之一。它能解决基于session认证的一些问题,比如跨站点请求伪造(CSRF)和分布式系统中的会话共享的问题。用户只需要通过用户名和密码一次验证,在服务器成功认证后,服务器会返回一个token给客户端。客户端在后续的…

    Java 2023年5月19日
    00
  • Java基础知识之ByteArrayOutputStream流的使用

    Java基础知识之ByteArrayOutputStream流的使用 ByteArrayOutputStream简介 Java I/O系统提供了许多不同类型的流,其中 ByteArrayOutputStream 是一个内存流,它将数据写入到内存缓冲区中而不是写入到硬盘中。它实际上是一个基于字节数组的输出/输入流,它可以动态扩展。 使用 ByteArrayOu…

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