zoukankan      html  css  js  c++  java
  • JavaWeb之JSP入门

    JSP原理及执行过程

    1. 流程图分析
      JSP流程图
    • 用户发起请求,用户通过浏览器访问jsp页面,浏览器将HTTP协议的请求部分发送到服务端.
    • 服务端获取请求部分,分析请求,发现本次的请求的的是jsp页面,jsp引擎按照内部规定,将jsp页面转换为一个servlet文件,并生成java文件,index_jsp.java,
      转换后的java文件中有init,service,destroy方法,在service方法中,将HTML标签原封不动输出到浏览器中,碰到java代码,复制到service方法中

    JSP如何出现

    如果开发中直接使用servlet对客户端响应,是难以维护的,因为它把html标签全部写到java文件中,更改一个小的部件,就要修改servlet文件.

    JSP语法

    1. JSP脚本段

      1. 存放定义型的语句
      <%! %>
      
      1. 普通的Java语句
      <%  %>
      
      1. 可以计算出结果的表达式
      <%= %>
      
    2. JSP的注释

      <%-- JSP的注释 --%>
      
      • 注意:JSP中实现注释,优先使用JSP注释,效率高,转换为servlet的时候,不需要处理
    3. JSP指令

      1. 指令格式

        <%@ 指令名称 属性名1=”属性值1” 属性名2=”属性值2”  属性名3=”属性值3” %>
        
      2. 指令的分类(3个)

        • page:告诉JSP引擎如何将当前JSP转换为Servlet
          • import="cn.itcast.domain.Product 导入其他JAVA对象
          • language="java": 如果JSP中出现脚本,采用的语言类型,目前仅支持JAVA
          • contentType="text/html;charset=UTF-8":告诉浏览器,本次响应内容类型和编码
          • pageEncoding="UTF-8" :告诉JSP引擎,当前页面采用的编码格式
          • autoFlush="true": 是否自动刷新
          • buffer="8kb": response缓存区大小
          • session="true": 如果获取不到sessionid是否创建session
          • errorPage="error.jsp": 当前页面发生错误之后,处理错误页面
          • isErrorPage="true":当前页面是错误页面
        • include:包含其它文件
        • taglib:引用其它的标签库
      3. 内置对象(9个)

        • application
        • config
          • JSP相当于servlet可以为servlet配置参数,也可以为JSP配置参数
        • out
          • 2个out不是同一个对象,response对应的out优先级高
          • JSP中默认使用内置的out对象
        • request
        • response
        • session
        • exception
          • 需要将当前页面的page指令下设置isErrorPage="true"才能使用
          • 作用:开发阶段,通过JSP中获取exception中的信息判断JSP出错异常信息
        • pageContext
          • 获取其它8个内置对象
          • 当作域对象使用
          • 操作其它域对象
          • pageContext.findAttribute(name)
          • pageContext>request>session>application
        • page
          • 代表this(当前访问的servlet)
      4. JSP域对象

        • pageContext
        • request
        • session
        • application
      5. JSP动作

        <jsp:forward page=""></jsp:forward>
        <jsp:include page=""></jsp:include>
        
  • 相关阅读:
    css基础教程
    网页加载-上下幕布分开
    Vue-Aixos
    webpack学习
    Vue、Element 路由跳转,左侧菜单高亮显示,页面刷新不会改变当前高亮菜单
    Vue知识概括
    JSON.parse() 与 JSON.stringify()
    Bootstrap4 样式笔记
    ES6基础语法
    V-model 双向绑定的原理是什么?
  • 原文地址:https://www.cnblogs.com/loveyous/p/7492676.html
Copyright © 2011-2022 走看看