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

相关推荐
AM越.39 分钟前
Java设计模式详解--装饰器设计模式(含uml图)
java·设计模式·uml
5980354151 小时前
【java工具类】小数、整数转中文大写
android·java·开发语言
JIngJaneIL1 小时前
基于java + vue个人博客系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
吃喝不愁霸王餐APP开发者1 小时前
Java后端服务在对接全国性霸王餐API时的多数据中心部署与就近调用策略
java·开发语言
从心归零1 小时前
springboot-jpa的批量更新方法
java·spring boot·spring
这周也會开心2 小时前
128陷阱,==与equals区别
java·开发语言
TAEHENGV2 小时前
回收站模块 Cordova 与 OpenHarmony 混合开发实战
android·java·harmonyos
a努力。3 小时前
宇树Java面试被问:方法区、元空间的区别和演进
java·后端·面试·宇树科技
2501_916766543 小时前
【面试题1】128陷阱、==和equals的区别
java·开发语言
a程序小傲3 小时前
蚂蚁Java面试被问:注解的工作原理及如何自定义注解
java·开发语言·python·面试