欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(一)

简介: 欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(一)

欢迎来到Jsp编程课时四

模块一:Servlect的注册回顾与周期回顾。

知识点:

代码编译:

package com.servlet;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class OneServlet implements Servlet  {
  public OneServlet() {
    System.out.println("OneServlet的抽象方法");
  }
  @Override
  public void destroy() {
    System.err.println("OneServlet释放内存的方法内容");
  }
  @Override
  public ServletConfig getServletConfig() {
    System.out.println("获得静态数据的方法");
    return null;
  }
  @Override
  public String getServletInfo() {
    // TODO Auto-generated method stub
    System.out.println("getServletInfo() 的 Servlect的方法内容");
    return null;
  }
  @Override
  public void init(ServletConfig arg0) throws ServletException {
    // TODO Auto-generated method stub
  System.out.println("Servlect init 的方法内容");
  }
  @Override
  public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
    // TODO Auto-generated method stub
    //等待浏览器访问
    System.out.println("servlect处于运行状态");
  }
}

wel.xml文件

模块二:Servlect对象@1ServletConfig静态数据

package com.Servlet;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet2
 */
@WebServlet(urlPatterns = "/B",initParams = {
    @WebInitParam(name="aaaa",value="张三"),
    @WebInitParam(name="age",value="23"),
    @WebInitParam(name="height",value="179cm"),
    @WebInitParam(name="weight",value="60kg"),
    @WebInitParam(name="x",value="我是第二种获取静态数据的方式晕染")
})
public class Servlet2 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet2() {
        System.out.println("Servlet2值一送到");
    }
    @Override
    public void init() throws ServletException {
      // TODO Auto-generated method stub
      super.init();
      //定义五个静态数据
      ServletConfig config=getServletConfig();
      String a=config.getInitParameter("aaaa");
      String b=config.getInitParameter("age");
      String c=config.getInitParameter("height");
      String e=config.getInitParameter("weight");
      String f=config.getInitParameter("x");
      System.out.println(a+"===="+b+"#######"+c+"-----"+e);
      //
      String d=config.getInitParameter("money");
      System.out.println(d);
      System.out.println(e);
      System.out.println(f+"我是第二种获取静态数据的方式晕染");
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    response.getWriter().append("Served at: ").append(request.getContextPath());
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}

web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>Day03jsp</display-name>
  <welcome-file-list>
   <!--  <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file> -->
    <welcome-file>B.jsp</welcome-file>
    <!-- <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file> -->
  </welcome-file-list>
  <!--  -->
  <!-- 在web.xml文件中定义静态数据的方式 -->
 <servlet>
 <servlet-name>Servlet1</servlet-name>
 <servlet-class>com.Servlet.Servlet1</servlet-class>
 <!-- 注意<init-param>写在里面 -->
 <init-param>
 <param-name>home</param-name>
 <param-value>二家酒店</param-value>
 </init-param>
 <init-param>
 <param-name>money</param-name>
 <param-value>200万</param-value>
 </init-param>
 <init-param>
 <param-name>h</param-name>
 <param-value>173cm</param-value>
 </init-param>
 <init-param>
 <param-name>a</param-name>
 <param-value>我是静态数据的获取方式a</param-value>
 </init-param>
 </servlet>
 <servlet-mapping>
  <servlet-name>Servlet1</servlet-name>
  <!--设置浏览器地址  -->
  <url-pattern>/A</url-pattern>
  <!-- 设置地址访问一定加/asd -->
  </servlet-mapping>
  <servlet>
  <servlet-name>Servlet4 </servlet-name>
  <servlet-class>com.Servlet.Servlet4</servlet-class>
  <!--静态数据写人web.xml  -->
  <init-param>
  <param-name>h</param-name>
  <param-value>10000</param-value>
  </init-param>
   <init-param>
  <param-name>b</param-name>
  <param-value>2000</param-value>
  </init-param>
  </servlet>
  <servlet-mapping>
  <servlet-name>Servlet4</servlet-name>
  <url-pattern>/D</url-pattern>
  </servlet-mapping>
</web-app>

模块三Servlect对象二@ServletContext.共享动态数据,文件数据,静态数据。

运行图

package com.servlet;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
/**
 * Servlet implementation class Servlet1
 */
@WebServlet(urlPatterns = "/ServletA",initParams = {
    //增加静态数据的第一个学生
    @WebInitParam(name="a",value="我是获取静态数据的方式")
})
/**
 * 12/4回顾获取静态数据和学习动态数据的方式
 * @author MZFAITHDREAM
 *
 */
public class Servlet1 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * Default constructor. 
     */
    public Servlet1() {
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
    @Override
    public void init() throws ServletException {
      // TODO Auto-generated method stub
      super.init();
      //定义4个静态数据
      ServletConfig config=getServletConfig();
      String a=config.getInitParameter("a");
      System.out.println(a);
    }
    /*
     * 浏览器none do-get请求
     * 第二个对象
ServletContext {con 上下文  }
tomcat 服务器为每个项目创建一个对象  ServletContext
1个web项目只有一个ServletContext对象
ServletContext 服务器开始创建   tomcat服务器 结束是 没有
ServletContext 作用   给同一个项目的所有同一个项目共享数据。
1  共享静态数据
2  共享动态数据
3  共享文件数据
     * 
     */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //设置 发送给浏览器的文本信息HTML文本格式
    //response.setContentType("text/html");
    response.setContentType("text/html");
    //设置发送给浏览器文本utf-8
    //response.setCharacterEncoding("UTF-8");
    response.setCharacterEncoding("UTF-8");
    //因为浏览器是使用get请求
    //所以Servlet do-get
    //servlet1相打篮球
    //1获取ServletContext对象
    ServletContext  sc=getServletContext();
    //获取web.xml文件中的镜头数据
    String a=sc.getInitParameter("lq");
    String c= (String) sc.getInitParameter("dt");
    //获得servlet4共享的排球
    String b= (String) sc.getAttribute("pq");
    String d= (String) sc.getAttribute("as");
    //删除排球
    sc.removeAttribute("pq");
    //给浏览器发送数据
    response.getWriter().append("<h1>Servlet1获得静态数据用来访问lq:"+a+"</h1><br>");
    response.getWriter().append("<h1>Servlet1获得静态数据用来访问dt:"+c+"</h1><br>");
    response.getWriter().append("<h1>response.getWriter().append方法打印内容</h1>");
    response.getWriter().append("<h1>Servlet4获得动态态数据用来访问pq:"+b+"</h1><br>");
    response.getWriter().append("<h1>Servlet4获得动态态数据用来访问as:"+d+"</h1><br>");
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
package com.servlet;
/*
 * ServletContext {con 上下文  }
tomcat 服务器为每个项目创建一个对象 
 ServletContext
1个web项目只有一个ServletContext对象
ServletContext 服务器开始创建    结束是 没有
ServletContext 作用   同一个项目共享数据。
1  共享静态数据
2  共享动态数据 写在java代码
3  共享文件数据
 * 创建对象
 *  ServletContext sc=getServletContext();获取对象
 * sc.setAttribute("pq", "排球"); 接收对象 
 *   删除对象 sc.removeAttribute("pq");
 */
import java.io.IOException;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet4
 */
@WebServlet("/Servlet4")
public class Servlet4 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     * 由个人共享出来的动态数据
     */
    public Servlet4() {
        super();
        // TODO Auto-generated constructor stub
    }
  /**
   * 创建对象 ServletContext sc=getServletContext();获取对象
   * sc.setAttribute("pq", "排球"); 接收对象 
   * 删除对象 sc.removeAttribute("pq");
   * 
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //servlet4共享班级 共享数据
    //共享动态数据
    response.setContentType("text/html");
    //设置发送给浏览器文本utf-8
    //response.setCharacterEncoding("UTF-8");
    response.setCharacterEncoding("UTF-8");
    //获取ServletContext 对象
    ServletContext sc=getServletContext();
    //将排球共享数据 setAttribute方法共享数据。
    //在java中object是任何数据类型的父类。
    //身份的多种类型;向上转型
    sc.setAttribute("pq", "我是共享的数据内容排球");
    sc.setAttribute("as", "我是共享的数据as采用的是setAttribut获得");
    //身份的多种类型;向上转型(强制转型)
    //获得动态数据
    //疯狂java讲义
    //getimitParameter只能获得静态数据
     String  a= (String) sc.getAttribute("pq");
     String  b= (String) sc.getAttribute("as");
    response.getWriter().append("Servlet4获得动态数据 "+a);
    response.getWriter().append("Servlet4获得动态数据 "+b);
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>Day04JSp</display-name>
  <welcome-file-list>
  <!--   <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file> -->
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>B.jsp</welcome-file>
   <!--  <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file> -->
  </welcome-file-list>
  <!-- 每一个servlet自己静态数据<init-param>-->
  <!--动态数据的获取方式  -->
  <context-param>
  <param-name>lq</param-name>
  <param-value>篮球</param-value>
  </context-param>
  <context-param>
  <param-name>zq</param-name>
  <param-value>足球</param-value>
  </context-param>
  <context-param>
  <param-name>dt</param-name>
  <param-value>恭喜你获得了我的动态数据的内容</param-value>
  </context-param>
</web-app>

模块四Servlect对象三Response对象。

运行图(仔细观察)


代码编译

package com;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet1
 */
@WebServlet("/Servlet1")
public class Servlet1 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet1() {
        super();
        System.out.println("Servlet1 在运行HttpServletRequest 的方法");
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //获得浏览器的请求,得到请求信息
    //得到请求的URL地址
    String a=request.getRequestURL().toString();
    System.out.println(a);
    //得到请求的数据
    String b=request.getRequestURI();
    System.out.println(b);
    //得到请求的URL地址中附带的参数
    String c=request.getQueryString();
    System.out.println(c);
    //得到来访者的IP地址
    String d=request.getRemoteAddr();
    System.out.println(d);
    //来访者的主机名
    String e=request.getRemoteHost();
    System.out.println(e);
    //来访者的端口号
    int f=request.getRemotePort();
    System.out.println(f);
    //得到请求URL地址时使用的方法(重要)
    String h=request.getMethod();
    System.out.println(h);
    //获取WEB服务器的IP地址
    String l=request.getLocalAddr();
    System.out.println(l);
    //获取WEB服务器的主机名
    String n=request.getLocalName();
    System.out.println(n);
    //获取WEB服务器的端口号
    int m=request.getLocalPort();
    System.out.println(m);
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet4
 */
@WebServlet("/Servlet4")
public class Servlet4 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet4() {
        super();
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setContentType("text/html");
    response.setCharacterEncoding("UTF-8");
    PrintWriter pw=response.getWriter();
    String a=(String) request.getAttribute("apple");
    String b=(String) request.getAttribute("banner");
    String c =(String) request.getAttribute("ma");
    pw.print("<h1 style=\"color: pink;\">收到Servlet3的请求,回复消息给浏览器,任务已完成,获得Servlet3携带的数据为:"+a+"</h1>");
    pw.print("<h1 style=\"color: red;\">收到Servlet3的请求,回复消息给浏览器,任务已完成,获得Servlet3携带的数据为:"+b+"</h1>");
    pw.print("<h1 style=\"color: yellow;\">收到Servlet3的请求,回复消息给浏览器,任务已完成,获得Servlet3携带的数据为:"+c+"</h1>");
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
相关文章
|
7月前
|
自然语言处理 Java 数据库连接
掌握JSP页面编程:动态生成Web内容
【4月更文挑战第3天】Java Server Pages (JSP) 是一种用于创建动态Web内容的Java技术,它结合HTML并允许在页面中嵌入Java代码。JSP支持代码片段、表达式语言(EL)和JSTL标签库,简化动态内容生成。当服务器接收到请求时,执行JSP中的Java代码并将结果嵌入HTML返回给客户端。示例展示了如何显示当前日期和时间。JSP可与Servlet、JavaBeans、数据库等结合,用于构建功能丰富的交互式Web应用。
145 5
掌握JSP页面编程:动态生成Web内容
|
存储 Java 关系型数据库
JSP考试质量分析系统myeclipse开发mysql数据库bs框架java编程web网页结构
JSP 考试质量分析系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
225 1
|
存储 Java 关系型数据库
JSP考试质量分析系统myeclipse开发mysql数据库bs框架java编程web网页结构
JSP 考试质量分析系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
161 0
|
Java 关系型数据库 MySQL
JSP考试报名管理系统myeclipse开发mysql数据库bs框架java编程web网页结构
二、功能介绍 (1)权限管理:对权限信息进行添加、删除、修改和查看 (2)用户管理:对用户信息进行添加、删除、修改和查看 (3)公告管理:对公告信息进行添加、删除、修改和查看 (4)考试科目管理:对考试科目信息进行添加、删除、修改和查看 (5)考试安排管理:对考试安排信息进行添加、删除、修改和查看 (6)报名管理:对报名信息进行添加、删除、修改和查看,审核, (7)用户登录、身份验证 三、注意事项 1、管理员账号:admin密码:admin 数据库配置文件DBO.java 角色:普通用户,管理员 2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql
148 0
|
Java 关系型数据库 MySQL
JSP在线客户服务支持管理系统myeclipse开发mysql数据库bs框架java编程jdbc
JSP 在线客户服务支持管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
78 0
|
Java 关系型数据库 MySQL
JSP 科研管理系统myeclipse开发mysql数据库bs框架java编程jdbc
JSP 科研管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。系统主要采用B/S模式开发。
58 0
|
Java 关系型数据库 MySQL
JSP实践教学平台系统myeclipse开发mysql数据库bs框架java编程jdbc
JSP 实践教学平台系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,数据库文件名是jspskcsjpt.sql,系统名称kcsjpt,使用java语言开发系统主要采用B/S模式开发。
73 0
|
2月前
|
Java 容器
【学习笔记】Jsp与Servlet技术
【学习笔记】Jsp与Servlet技术
72 0
|
4月前
|
SQL Java 数据库
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
该博客文章介绍了在JSP应用中使用Servlet查询SQL Server数据库的表信息,并通过JavaBean封装图书信息,将查询结果展示在Web页面上的方法。
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
|
4月前
|
供应链 前端开发 Java
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)
这篇文章通过一个服装库存管理系统的实例,展示了在Spring Boot项目中使用Ajax、JSON、layui、MVC架构和iframe等技术,涵盖了注册登录、权限管理、用户管理、库存管理等功能,并提供了系统运行环境和技术要求的详细说明。
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)