• Servlet与JSP概念理解


    Servlet是用Java编写的服务端程序。需要部署到servlet容器上才能运行,tomcat 就是一个servlet容器。


    1、Servlet的生命周期

    客户端请求该 Servlet --> 加载Servlet类到内存 -->  实例化并调用init()方法初始化该Servlet --> 响应客户请求阶段(调用service()方法) -->  销毁 (destroy()) 


    2、什么时候Servlet容器装载Servlet:

    1)Servlet容器启动时自动装载某些Servlet,实现它只需要在web.xml文件中的<servlet></servlet>之间添加如下代码:<load-on-startup>1</load-on-startup>  

    2)在Servlet容器启动后,客户首次向Servlet发送请求。

    3)Servlet类文件被更新后,重新装载Servlet。

    Servlet被装载后,Servlet容器创建一个Servlet实例并调用Servlet的init()方法进行初始化。在Servlet的整个生命周期内,init()方法只被调用一次。


    3、Servlet与JSP的比较:

    相似点:都可以生成动态网页。

    JSP的优点是擅长于网页制作,生成动态页面比较直观,缺点是不容易跟踪与排错。

    Servlet是纯Java语言,擅长于处理流程和业务逻辑,缺点是生成动态网页不直观。


    4、JSP

    1) 概念

    JSP其实就是一个以“.jsp”为后缀的文件,该文件的内容主要是html和少量的java代码(<% java代码 %>    <%=java代码 %>)。

    Jsp文件会被容器转换成一个servlet然后执行

    具体转换方式:对于html(css,js)来说,会放到service方法里,使用out.write输出; 而<% %>会照搬到service方法中

    2)隐含对象 --jsp9个内置对象 http://www.cnblogs.com/nannan0226/p/6378968.html

    定义:在jsp文件里可以直接使用的对象。比如out、request、response

    3)指令

    定义:通知容器将jsp文件转换成一个servlet类时做一些额外的处理。比如导包。

    格式: <%@指令的名称 属性名称=值%>

    常用指令:

    i: page指令:

    import属性:导包。 

    contentType属性:设置response.setContentType方法的参数值。 

    pageEncoding属性:告诉容器jsp文件的字符集,容器会按照属性指定的字符集去解码。例子如下:

    <%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>

    ii: taglib指令:定义标签

    <%@ taglib prefix="s"  uri="/struts-tags"%>

    iii: include指令:引入指定jsp文件

    <%@include file="/common/taglibs.jsp"%>

  • 相关阅读:
    openstack nova 基础知识——Quota(配额管理)
    02python注释
    01使用Pycharm编写第一个python程序
    35Angular实现一个todoList
    34Angular实现搜索缓存数据功能
    33Angular实现人员登记系统(表单元件的双向数据绑定)
    32练习
    31封装一个网络请求的服务
    30服务(练习)
    29服务
  • 原文地址:https://www.cnblogs.com/amunamuna/p/6393505.html
Copyright © 2020-2023  润新知