JavaWeb实验 Servlet基础编程

实验目的

  1. 编写Servlet代码;
  2. 熟悉并掌握Servlet的使用和配置。

实验内容

【1】利用Servlet实现一个简单的登录系统,要求:

  1. 包括登录页面、登录成功页面和登录失败提示页面;
  2. 用户可以在登录页面输入用户名和密码;
  3. 点击登录页面中的提交按钮,并在Servlet对输入的信息进行判断;
  4. 如果用户名错误,则在登录失败页面显示“用户名不存在”;
  5. 如果用户名正确,但密码错误,则显示“密码错误,请重新输入”;
  6. 如果用户名和密码都正确,则进入登录成功页面。


Servlet
package gdpu.com;import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class Test10 extends HttpServlet {/*** @see HttpServlet#HttpServlet()*/public Test10() {super();// TODO Auto-generated constructor stub}/*** @see Servlet#init(ServletConfig)*/public void init(ServletConfig config) throws ServletException {// TODO Auto-generated method stub}/*** @see Servlet#destroy()*/public void destroy() {// TODO Auto-generated method stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stub}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubrequest.setCharacterEncoding("UTF-8");response.setCharacterEncoding("UTF-8");response.addHeader("content-type", "text/html;charset=utf-8");String username = request.getParameter("username");String password = request.getParameter("password");if("gdpu".equals(username)&&"123".equals(password)){request.setCharacterEncoding("UTF-8");response.getWriter().print("登录成功");}else if("gdpu".equals(username)){request.setCharacterEncoding("UTF-8");response.getWriter().print("密码错误,请重新输入");}else{request.setCharacterEncoding("UTF-8");response.getWriter().print("用户名不存在");}}}
Login
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<html>
<head>
<meta charset=UTF-8>
<title>GDPU官网登录页面</title>
</head>
<%String usernamex = (String)session.getAttribute("login");if(usernamex == null){}else{response.sendRedirect("./index1.jsp");}
%>
<body>
<form action ="./login.html"  method ="post">GDPU账号:<input type = "text" style = "width220px;" name = "username"/><br><br>账号密码 :<input type = "password" style = "width220px;" name = "password"/><br><br><input type = "submit" style = "width:220px;" value = "登录"/>
</form>
</body>
</html>

【2】利用Servlet实现一个天气预报信息的API,具体可预报的城市和对应的天气情况,可以运用数组进行模拟。

package gdpu.com;import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class Test10 extends HttpServlet {/*** @see HttpServlet#HttpServlet()*/public Test10() {super();// TODO Auto-generated constructor stub}/*** @see Servlet#init(ServletConfig)*/public void init(ServletConfig config) throws ServletException {// TODO Auto-generated method stub}/*** @see Servlet#destroy()*/public void destroy() {// TODO Auto-generated method stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubrequest.setCharacterEncoding("UTF-8");response.setCharacterEncoding("UTF-8");response.addHeader("content-type", "text/html;charset=utf-8");String city[]=new String[] {"北京","上海","广州","深圳"};String num = request.getParameter("num");int numx = Integer.parseInt(num);String weather[]=new String[] {"小雪","多云","晴","小雨"};response.getWriter().print(city[numx]+"今天天气"+weather[numx]);}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stub}}

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面试题:分布式锁用了 Redis 的什么数据结构

在使用 Redis 实现分布式锁时&#xff0c;通常使用 Redis 的字符串&#xff08;String&#xff09;。Redis 的字符串是最基本的数据类型&#xff0c;一个键对应一个值&#xff0c;它能够存储任何形式的字符串&#xff0c;包括二进制数据。字符串类型的值最多可以是 512MB。 Re…

简单了解一个数据包在网络的一生

在主题之前&#xff0c;我想先谈谈目前计算机的网络模型&#xff0c;主要谈谈 TCP/IP 模型&#xff1a; 应用层&#xff1a;产生最原始的数据&#xff0c;常见协议如 http、ftp、websocket、DNS、QUIC 传输层&#xff1a;传递应用层的数据给网络层&#xff0c;必要时进行切割&…

mysql题库详解

1、如何创建和删除数据库&#xff1f; 创建数据库 CREATE DATABASE 数据库名; 删除数据库 drop database 数据库名; 2、MyISAM与InnoDB的区别&#xff1f; 1&#xff09;事务&#xff1a;MyISAM 不支持事务 InnoDB 支持 2&#xff09;行锁/表锁&#xff1a;MyISAM 支持表级锁…

#QT(QString)

1.IDE&#xff1a;QTCreator 2.实验 3.记录 4.代码

QT开发(二) 构建QMainWindow

1、前言 QMainWindow是Qt框架中用于创建应用程序主窗口的类。它是许多GUI应用程序的基础&#xff0c;提供了丰富的功能和灵活性&#xff0c;以支持用户界面的创建和管理。 QMainWindow的结构主要包括以下几个部分&#xff1a; 菜单栏&#xff08;Menu Bar&#xff09;&#…

【超级干货】播放器核心知识点-音视频同步原理深入剖析

引言 本文是自己学习利用ffmpeg实现音视频同步播放的总结文档,参考了网上一些博客,同时调试ffplay源码进行理解,站在巨人的肩膀上学习,感谢开源和分享精神。文中粘贴的代码每行都有注释,确保读者能理解所涉函数的每一行代码的意义。 章节 因为ffplay源码阅读起来比较复…

微服务技术栈之rabbitMQ基础入门(一)

准备工作&#xff1a; 1&#xff0c;创建空的工程&#xff1a; 首先我们先创建一个空的工程&#xff0c;并且命名为 mq-java 2&#xff0c;创建一个生产者springboot工程&#xff08;plblisher&#xff09;&#xff1a; 设置项目的基本信息&#xff1a; 勾选版本和依赖&…

京东商品详情接口数据采集—价格,库存,支持高并发

初识API调用 为帮助商家及开发者快速掌握京东API调用方法&#xff0c;本文为大家提供的万邦API工具为例&#xff0c;为读者演示一例API调用过程&#xff0c;并做相应讲解。 item_get-获得JD商品详情 1、API公共参数示例 请求地址: https://api-gw.onebound.cn/jd/item_get …

Spring循环依赖的成因与破局

一、Spring注入类型 Spring 核心功能之一依赖注入&#xff0c;依赖注入是使用 Spring 框架的基本手段&#xff0c;通过他获取各种类型的 bean&#xff0c;但使用不同的依赖注入类型时经常会遇到循环依赖的问题。Spring 依赖注入类型&#xff1a; 字段注入&#xff0c;这是最常…

Word中解决插入脚注导致的分页位置错误问题

先放一个截图&#xff1a; 上面的截图中&#xff0c;样式为标题3的段落“四、固执的念头”前插入了连续型分节符&#xff0c;并且该分节符的样式为正文&#xff0c;前后的正文段落中有脚注&#xff0c;结果在分页时&#xff0c;标题3段落“四、固执的念头”后的正文段落自动进入…

什么台灯对眼睛好?揭秘四款央视推荐的护眼台灯

近年来&#xff0c;随着电子产品的普及&#xff0c;虽说给生活带来了许多便利&#xff0c;不过对于眼睛还没发育完全的孩子而言&#xff0c;经常使用电子产品是非常容易伤眼的&#xff0c;更何况这些孩子每天还需要长时间的用眼学习&#xff0c;眼睛的负担是非常大的。所以在学…

谷粒商城【成神路】-【10】——缓存

目录 &#x1f9c2;1.引入缓存的优势 &#x1f953;2.哪些数据适合放入缓存 &#x1f32d;3.使用redis作为缓存组件 &#x1f37f;4.redis存在的问题 &#x1f9c8;5.添加本地锁 &#x1f95e;6.添加分布式锁 &#x1f95a;7.整合redisson作为分布式锁 &#x1f697…