【JavaWeb程序设计】Servlet(一)

目录

一、客户端通过login.jsp发出登录请求,请求提交到loginServlet处理。

[1. 运行截图](#1. 运行截图)

[2. 登录页面(login.jsp)](#2. 登录页面(login.jsp))

[3. loginServlet](#3. loginServlet)

[4. 登录成功页面(loginSuccess.jsp)](#4. 登录成功页面(loginSuccess.jsp))

[5. 登录失败页面(loginFail.jsp)](#5. 登录失败页面(loginFail.jsp))

二、使用ServletConfig检索Servlet的初始化参数,请补充填写以下①-⑥空,并运行ConfigDemoServlet程序,将运行结果截图。

[1. 编写ConfigDemoServlet程序](#1. 编写ConfigDemoServlet程序)

[2. 修改web.xml文件](#2. 修改web.xml文件)

[3. 在浏览器的地址栏中输入下面URL访问该Servlet](#3. 在浏览器的地址栏中输入下面URL访问该Servlet)


一、客户端通过login.jsp发出登录请求,请求提交到loginServlet处理。

如果用户名和密码相同则视为登录成功,跳转到loginSuccess.jsp页面,显示"欢迎你"+用户名;否则跳转到loginFail.jsp页面,显示"登录失败",通过超链接返回login.jsp。

1. 运行截图

(1)输入账号密码相同

成功登录

(2)输入账号密码不一致:

登录失败

点击超链接返回登录页面

2. 登录页面(login.jsp)

表单提交到loginServlet

3. loginServlet

4. 登录成功页面(loginSuccess.jsp)

5. 登录失败页面(loginFail.jsp)

二、使用ServletConfig检索Servlet的初始化参数,请补充填写以下①-⑥空,并运行ConfigDemoServlet程序,将运行结果截图。

1. 编写ConfigDemoServlet程序

java 复制代码
package Servlet;

import java.io.*;

import java.sql.*;

import javax.servlet.*;

import javax.servlet.http.*;



public class ConfigDemoServlet extends HttpServlet{

String servletName=null;

ServletConfig config=null;

String email=null;

String telephone=null;



public void init() {

config =____①______;

servletName = config.getServletName();

email = ____②____;

telephone =____③___;

}



public void service(HttpServletRequest request, HttpServletResponse response)

             throws ServletException,IOException{  

  response.setContentType("text/html;charset=gb2312");

  PrintWriter out = response.getWriter();

  out.println("<html><body>");

    out.println("Servlet名称:"+servletName+"<br>");

    out.println("Email地址:"+email+"<br>");

    out.println("电话:"+telephone);

    out.println("</body></html>");

}

}

填空:

①getServletConfig()

②config.getInitParameter("email")

③config.getInitParameter("telephone")

2. 修改web.xml文件

在其中添加下面Servlet定义和初始化参数定义

XML 复制代码
<servlet>

    <servlet-name>    ④    </servlet-name>

    <servlet-class>    ⑤    </servlet-class>

    <init-param>

      <param-name>email</param-name>

      <param-value>hacker@163.com</param-value>

    </init-param>

    <init-param>

      <param-name>telephone</param-name>

      <param-value>8899123</param-value>

    </init-param>

    

    <load-on-startup>1</load-on-startup>

  </servlet>

  <servlet-mapping>

     <servlet-name>   ④    </servlet-name>

     <url-pattern>     ⑥     </url-pattern>

  </servlet-mapping>

填空:

④ConfigDemoServlet

⑤servlet.ConfigDemoServlet(存放位置如下图)

⑥/configDemo

3. 在浏览器的地址栏中输入下面URL访问该Servlet

http://localhost:8080/bookstore/configDemo

修改url如下:

修改模块应用程序上下文:

重启Tomcat之后访问该Servlet结果如下

相关推荐
格子软件11 分钟前
2026年分布式GEO代理流量调度:源码级状态机防重挂实战
java·vue.js·人工智能·spring boot·分布式·vue
hj28625114 分钟前
Docker 容器化技术标准化笔记
java·笔记·docker
我是一颗柠檬25 分钟前
【Java项目技术亮点】EXPLAIN深度分析与慢查询治理
android·java·开发语言
万亿少女的梦16828 分钟前
基于Spring Boot的社区管理系统设计与实现
java·spring boot·mysql·vue·系统设计
大气的小蜜蜂38 分钟前
领域层的服务
java·前端·数据库
agent89739 分钟前
Spring Boot 接口超时治理:从连接池、线程池到熔断限流的完整排查思路
java·spring boot·后端
Devin~Y1 小时前
抖音级短视频推荐与直播带货平台面试实战:从 Java 微服务到 RAG 智能客服全链路解析
java·spring boot·redis·spring cloud·kafka·agent·rag
帅次1 小时前
Android 高级工程师面试:Java 多线程与并发 近1年高频追问 22 题
android·java·面试
要开心吖ZSH1 小时前
Java事务与MySQL事务的关系及MVCC通俗解析
java·开发语言·mysql·mvcc
放弃 治疗1 小时前
Windows 11系统 最新 Launch4j 安装与使用教程:从 JAR 到 EXE 的完整打包指南
java·jar