servlet基础操作(get)

news2025/1/11 7:46:33

1,首先创建一个javaweb的项目

简历一般的java项目选中项目,双击shift出现搜索栏

 找到这个框架,选择里面的javaweb,注意选择右侧版本显示为4.0的javaweb

之后部署Tomcat

我这里是本地,所以在本地选的是local

第一步实现HttpServlet

第二部注解@WebServlet()括号内为资源路径/必须加,不加/就会报错

resp.setContentType("text/html;charset=utf-8")转换网页显示的文字,防止出现?乱码

resp.getWriter().append();括号内的参数是页面上显示添加的数据 此处没做演示

String user=req.getParameter("userr");
        String password=req.getParameter("pw");

是获取网页的参数 配合之后给的前段页面进行获取参数

@WebServlet("/login")
public class LoginRequest extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html;charset=utf-8");
//        接收参数,括号内的是参数的名称与前端创建的表单内的name属性照应
        String user=req.getParameter("userr");
        String password=req.getParameter("pw");
        System.out.println(user+"  ;"+password);
if (!user.equals("admin")){
    resp.getWriter().append("账户密码错误");
}else if (!password.equals("123456")){
            resp.getWriter().append("账户密码错误");
        }
        if (user.equals("")&user==null){
            resp.getWriter().append("账户不能为空");
        }else if (password.equals("")&password==null){
            resp.getWriter().append("密码不能为空");
        }
        if (user.equals("admin")&password.equals("123456")){
            resp.getWriter().append("登录成功");
        }

    }
}

前端页面

表单内 action参数是获取你的请求资源路径 method是什么请求方式

name=uuser 和name=pw与后端里面的string接受的括号内的参数照应

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <form action="/login" method="get">
        <label for="uuser">
            用户名:
        </label>
<!--        这里的userr和后端里面的,req.getParameter("userr")必须保持一致-->
        <input type="text" name="userr" id="uuser">
        <br>
        <label for="pw">
            密码:
        </label>
        <input type="text" name="pw" id="pw">
        <br>
        <input type="submit" value="提交">

    </form>

</body>

</html>

启动程序后打开页面输入以下信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2040493.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python 类的使用

目录 1、类的基本概念 1.1、类的定义 1.2、类的使用 2、类的公有属性和私有属性 2.1、为什么子类不能访问父类的私有属性/方法&#xff1f; 3、实例方法、类方法、静态方法 3.1、实例方法 3.2、类方法 3.3、静态方法 4、property 、XXX.setter和XXX.deleter的使用 4…

20240814确认RK3588S接USB摄像头录像+预览出现异常

20240814确认RK3588S接USB摄像头录像预览出现异常 2024/8/14 21:03 缘起&#xff0c;使用荣品RK3588S-AHD开发板接USB摄像头预览【几分钟】正常。 但是只要一开始录像预览就异常。 于是&#xff0c;上Rockchip的官方RK3588S开发板。预览52分钟还是出错了。 录像预览也异常。 但…

【IO day8】

第一题&#xff1a; 由于共享内存没有同步&#xff0c;想办法搞定共享内存的同步问题 p1.c p2.c 第二题&#xff1a; 使用第一题作用已经实现的共享内存&#xff0c;去做2个终端之间的互相聊天 t1.c t2.c

C语言 | Leetcode C语言题解之第335题路径交叉

题目&#xff1a; 题解&#xff1a; bool isSelfCrossing(int* distance, int distanceSize){if (distance NULL || distanceSize < 4) {return false;}for (int i 3; i < distanceSize; i) {if ((distance[i] > distance[i - 2]) && (distance[i - 1] &l…

临床数据科学和金融数据科学,选择R语言吧!

学习R语言不仅能够增强数据分析能力&#xff0c;还能开拓解决复杂问题的新方法。然而&#xff0c;在学习R语言的过程中&#xff0c;许多初学者会遇到各种陷阱&#xff0c;这些陷阱不仅会延缓学习进度&#xff0c;还可能导致学习动机的丧失。 下面内容摘录自《R 语言与数据科学的…

814的学习

共享内存实现

【谷粒商城学习笔记】项目介绍+分布式基础概念

文章目录 电商模式项目技术特色项目前置要求分布式基础概念微服务集群/分布式/节点远程调用负载均衡服务发现、注册中心配置中心服务熔断、降级网关 微服务架构图微服务划分图文章说明 电商模式 市面上有 5 种常见的电商模式 B2B、B2C、C2B、C2C、O2O。 B2B 模式&#xff1a;…

SAP与网易大数据系统集成案例

一、项目环境 江西某药业有限公司是一家以医药产业为主营、资本经营为平台的大型民营企业集团。公司成立迄今&#xff0c;企业经营一直呈现稳健、快速发展的态势集团总销售额超40亿元。 为了帮助企业更有效的进行分配和管理&#xff0c;包括人力、物资、时间和预算等资源&a…

Redis的简单介绍

一、Redis简介 1.NOSQL NoSQL( Not Only SQL)&#xff0c;意即“不仅仅是SQL”&#xff0c;泛指非关系型的数据库。随着互联网web2.0网站的兴起&#xff0c;传统的关系数据库在应付web2.0网站&#xff0c;纯动态网站已经显得力不从心&#xff0c;暴露了很多难以克服的问题&am…

DNS的反向解析

反向解析 DNS的反向解析&#xff08;Reverse DNS Lookup&#xff0c;通常缩写为rDNS&#xff09;是指通过IP地址查找与之对应的域名的过程。与正向解析&#xff08;通过域名查找IP地址&#xff09;相对&#xff0c;反向解析的主要用途是验证IP地址与域名的关联性&#xff0c;常…

调用本地大模型API 以ollama为例子 技术栈node.js koa2 vite

首先在官方下载ollama大模型 https://ollama.com/ 在cmd中查看版本 ollama -v 看到有版本号&#xff0c;说明安装完成。 下载合适的大模型 运行内存16g 建议 7b 左右的大模型&#xff0c;16g以上自己合理安排 点击官网模型下载合适的大模型 复制粘贴到cmd中 下载完成后 ollama …

学习嵌入式入门(十一)电容触摸实验及OLED 显示实验

一、电容触摸实验 1.电容触摸按键简介 电容式触摸按键已经广泛应用在家用电器、消费电子市场&#xff0c;其主要优势有&#xff1a;无机械装置&#xff0c; 使用寿命长&#xff1b;非接触式感应&#xff0c;面板不需要开孔&#xff1b;产品更加美观简洁&#xff1b;防水可以做…

【教程】Ubuntu给pycharm添加侧边栏快捷方式

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你&#xff0c;欢迎[点赞、收藏、关注]哦~ 以下教程不仅限于pycharm&#xff0c;其他软件也是一样操作 1、进入到pycharm的目录&#xff0c;先通过命令行打开pycharm&#xff1a; ./bin/pycharm…

Vscode——如何实现 Ctrl+鼠标左键 跳转函数内部的方法

一、对于Python代码 安装python插件即可实现 二、对于C/C代码 安装C/C插件即可实现

LATTICE进阶篇DDR2--(4)DDR2 IP核总结

一、IP核的时钟框架 1片DDR2的接口是16位&#xff0c;且DDR2是双边沿读取的&#xff0c; 故当DDR2芯片的时钟为200M时&#xff0c;右侧DDR2芯片上的数据吞吐率为200M*2*16b&#xff0c;左侧数据吞吐率为200M*32b&#xff0c;左右两侧数据吞吐量相等。 根据上规律可知&#xf…

Java Spring|day2.SpringMVC

Spring MVC 定义 MVC是一种设计模式&#xff0c;在这种模式下软件被分为三层&#xff0c;即Model&#xff08;模型&#xff09;、View&#xff08;视图&#xff09;、Controller&#xff08;控制器&#xff09;。 MVC是一种软件架构思想&#xff0c;把软件按照模型&#xff…

CSS设置文本超出显示省略号

一、单行文本显示省略号 <div class"box"><p>测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本…

用于不平衡医疗数据分类的主动SMOTE

一、主动学习如何应用于不平衡数据的处理 首先&#xff0c;主动SMOTE不是像经典的SMOTE那样从训练集中随机选择一个样本作为生成合成样本的轴心点&#xff0c;而是通过不确定性和多样性采样来智能地进行样本选择&#xff0c;这是主动学习的两种技术。 在数据不平衡的情况下&…

2024.8完善版 NineAi-ChatGPT系统源码

Nine AI.ChatGPT是基于ChatGPT开发的一个人工智能技术驱动的自然语言处理工具&#xff0c;它能够通过学习和理解人类的语言来进行对话&#xff0c;还能根据聊天的上下文进行互动&#xff0c;真正像人类一样来聊天交流&#xff0c;甚至能完成撰写邮件、视频脚本、文案、翻译、代…

Vue2中watch与Vue3中watch对比

上一节说到了 computed计算属性对比 &#xff0c;虽然计算属性在大多数情况下更合适&#xff0c;但有时也需要一个自定义的侦听器。这就是为什么 Vue 通过 watch 选项提供了一个更通用的方法&#xff0c;来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时&#…