zoukankan      html  css  js  c++  java
  • 使用JSP生成Web页面

    一、关于JSP的介绍

    1、什么是JSP?

      Java Servlet Page 简称JSP,由Sun公司倡导建立起来的一种动态的网页技术标准。

    2、工作原理

      JSP运行在服务器端,通过浏览器访问JSP,Web服务器会使用JSP引擎对请求的JSP进行编译执行,并返回页面给客户端。

     图示如下:

     

    3、JSP执行的过程

      翻译阶段:当Web服务器收到JSP请求时,会对JSP文件进行翻译,将其转换成可识别的java文件;

      编译阶段:经过翻译过后的JSP文件相当于编写号的java源文件,必须将其编译成可执行的字节码文件;

      执行阶段:web容器接受了客户端的请求之后,经过翻译和编译两个阶段,生成可以被执行的二进制字节码文件。

    二、关于JSP页面的page指令和jstl标签库

    <@%page language="java" pageEncoding="UTF-8" contentType="text/html; UTF-8" @>

      1、language 属性用于指定的语言,jsp默认为java;

      2、pageEncoding:jsp文件本身的编码,设定为utf-8,可以解决中文乱码的问题;

      3、contentType:服务器发送给客户端的内容编码,通常为text/html;utf-8

     

    jstl标签库(core/format/xml/sql)

    jstl是一个不断完善的开源源代码的jsp标签库,由四个定制标记库和一对通用的标记库验证器组成

      core标记库:提供定制操作,通过限制作用域的变量管理数据,以及页面内容的迭代与条件操作;

        <@%taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" @>

      format标记库:用来格式化数据(日期 数字);

        <@%taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt_rt" @>

      xml标记库:操作通过xml表示的数据;

      sql标记库:查询关系数据库。

     三、Servlet、过滤器及监听器

    1、Servlet(doGet/doPost/Servlet方法)

      实例化:Servlet容器创建的Servlet的实例;

      初始化:容器调用init()方法;

      服务:客户请求Servlet,则调用Servlet()方法;

      销毁:销毁实例之前调用destroy()方法.

    部署Servlet,需要对web.xml文件进行配置:

      1)web.xml文件中添加<servlet>元素,作用是将Servlet内部名映射到一个Servlet类名,格式为:报名+类名

      2)添加<servlet-mapping>元素,作用是将用户访问的URL映射到Servlet内部名

    2、过滤器

      原理如图:

      

      注:过滤器的使用可以极大的提高控制效果,提高了工作效率

    在实际开发过程中,过滤器以类的形式存在实现Filter接口,并将请求与响应的编码方式设置为utf-8

      resquest.setCharterEncoding("utf-8");//设置请求时的编码方式

      response.setCharterEncoding("utf-8");//设置响应时的编码方式

      chain.doFilter(resquest,response);//调用web资源

     3、监听器

      Servlet API中一共定义了8个监听器接口,可以用于监听ServletContext、HttpSession、ServletRequest对象的生命周期和这些对象的属性引发的事件

      

  • 相关阅读:
    手机APP远程空气质量监测应用
    SPI
    2017-10-14
    常量声明
    ios- nil NULL 和 NSNull
    Xcode搭建真机调试环境 图文实例
    ios notification
    集合对象总结
    集合对象(NSSet,NSMutableSet,NSIndexSet)
    词典对象(NSDictionary和NSMutableDictionary)
  • 原文地址:https://www.cnblogs.com/afeiiii/p/13396163.html
Copyright © 2011-2022 走看看