【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结果如下

相关推荐
2601_953824611 分钟前
【计算机毕业设计】基于Spring Boot的画师接稿平台设计与实现
java·spring boot·后端
小宋102144 分钟前
不用学算法也能玩转 AI?普通 Java 程序员转 AI 应用开发路线
java·人工智能·重构
我是唐青枫1 小时前
Java Jetty 实战详解:从嵌入式 HTTP 服务到 Spring Boot 容器替换
java
带刺的坐椅1 小时前
当所有人都在用 TS/Python 写 Agent,我们为什么坚持 Java
java·ai·solon·codex·opencode·soloncode
小王师傅661 小时前
英语学习记
java·学习
早点睡啊Y2 小时前
深入学LangChain官方文档:Observability 与 Studio——先看清 Agent 到底做了什么
java·数据库·langchain
雨落在了我的手上2 小时前
Java数据结构(六):链表的介绍
java·开发语言·数据结构
独隅2 小时前
DevEco Code Plan+Build 双 Agent 协同开发效率实测
java·开发语言
吃饱了得干活3 小时前
@Transactional 又失效了?把这 8 个坑全填了!
java·后端·spring
今天AI了吗4 小时前
Spring AI 框架实战:Java 后端集成大模型的架构设计与工程落地
java·人工智能·python·spring·机器学习