【JavaWeb笔记】单选框,结合Servlet

各个部分的作用

jsp部分

form action="...":表单标签,供用户提交数据。内部的submit点击之后相当于是点action的URL

input type="radio":输入类型为单选框。把name设置为一样的,这样效果上就是单选,也可以自己修改,让它实现多选、互斥选等功能。如果三个单选的name都是queryType,我们在servlet中写起来会方便很多,通过request.getParameter(name)得到用户是选了哪种查询方式。再通过

request.getParameter(request.getParameter(name))得到用户输入的内容,动态代码。

label:for谁,点击之后,就相当于是鼠标点谁。for单选框,点完,就会选中。for文本框,点完,光标就会在文本框闪。
input type="text":文本框

input type="submit" value="查询":提交按钮

Servlet在这里常出的错

pstmt.setString(1,content):这会自动给content加上单引号,再加入到pstmt的字符串中。

代码

Jsp

html 复制代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>query</title>
</head>
<body>
<form action="<%=request.getContextPath()%>/query">
    <input type="radio" id="name" name="queryType" value="name" checked>
    <label for="name">按姓名查询</label>
    <label for="studentName">学生姓名:</label>
    <input type="text" id="studentName" name="name">
    <br>
    <input type="radio" id="student_id" name="queryType" value="id">
    <label for="student_id">按学号查询</label>
    <label for="studentId">学生学号:</label>
    <input type="text" id="studentId" name="id"><br>
    <br>

    <input type="radio" id="student_fl" name="queryType" value="fl">
    <label for="student_fl">显示有不及格学科的学生信息</label><br>
    <input type="submit" value="查询">
    <a href="index.jsp">返回主页</a>

</form>
</body>
</html>

Servlet

java 复制代码
// 获取查询类型
String queryType = request.getParameter("queryType");
// 
String content = request.getParameter(queryType);
···
// 查询语句
String sql = "select * from Marks where "+queryType+"=?";
pstmt= conn.prepareStatement(sql);
pstmt.setString(1,content);
相关推荐
Hello_Embed3 小时前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中3 小时前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Grassto3 小时前
RAG 从入门到放弃?丐版 demo 实战笔记(go+python)
笔记
Magnetic_h4 小时前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
2501_918126916 小时前
用html5写一个flappybird游戏
css·游戏·html5
周周记笔记7 小时前
学习笔记:第一个Python程序
笔记·学习
丑小鸭是白天鹅7 小时前
Kotlin协程详细笔记之切线程和挂起函数
开发语言·笔记·kotlin
潘达斯奈基~7 小时前
《大数据之路1》笔记2:数据模型
大数据·笔记
..过云雨7 小时前
05.【Linux系统编程】进程(冯诺依曼体系结构、进程概念、进程状态(注意僵尸和孤儿)、进程优先级、进程切换和调度)
linux·笔记·学习
咸甜适中8 小时前
rust语言 (1.88) egui (0.32.2) 学习笔记(逐行注释)(二十八)使用图片控件显示图片
笔记·学习·rust·egui