JSP简介、运行原理、基本语法、常用指令标签

JSP简介:

                         JSP全称:Java Server Pages,是运行在java服务器中的页面

                         JSP的本质是一个Servlet,Servlet能做的JSP都可以。

                         JSp必须运行在服务器中,不能直接在浏览器打开。

                         JSP是Web网页的技术标准,主要语法组成包括:指令,html模板元素,脚本片段(小脚本),表达式,声明,注释,后缀是*.jsp。

 JSP的运行原理:

  1. 第一次访问JSP页面时,服务器会将XXX.jsp文件翻译成XXX_jsp.java文件,再把该文件编译为XXX_jsp.class    文件,
  2. 以后再访问该jsp页面只要文件内容没有进行改变就不会再次进行翻译和编译
  3. 由于jsp本质是一个servlet但是你又没有自己手动给他配置web.xml他却能运行,

                    原因是:Tomcat中的web.xml会默认注册所有的*.jsp。

 基本语法:

  •   指令:

                 语法格式:<%@%>
                 常用指令:<%@ page %> <%@ include %> <%@ taglib %>

  •   模板元素:

                  html&css&js等

  •   脚本片段:

                 语法格式:<%%>
                 作用:在_jspService()中,书写java代码

  •   表达式:

                 语法格式:<%=%>
                 作用:与out.print()和Servlet中的Writer作用一致。

  •   声明:

                语法格式:<%!%>
                作用:在class(index_jsp)中,书写java代码   

  •   注释:

                  java: //    /**\/
                  html:<!-- -->
                  jsp:<%-- --%>

 常用指令:

  • page指令

                    语法
                         <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
                     属性
                        - language:语言,值为java且仅java。
                        - contentType:与response.setContentType()作用一致,设置浏览器编码。
                        - pageEncoding:设置Jsp页面的编码字符集。
                        - import:导包
                        - isErrorPage:设置当前页面是否为错误页面,默认值"false"。
                          - ​    true:设置当前页面为错误页面,可以使用exception内置对象,捕获异常 。
                          - ​    false:设置当前页面不是错误页面,不可以使用exception内置对象,捕获异常 。
                        - errorPage:设置当前页面错误时的跳转目标页面。错误需要在_jspService()中才可以捕获。

  •  include指令

                     语法:<%@include file="被包含文件的路径" %>     
                     作用:将目标文件包含到当前文件中。
                     特点:被包含的文件不会被翻译&编译。(先包含,再翻译)PS:就是不会生成java文件和class文件

 常用动作标签:

  •  转发动作标签

                     - 语法:\<jsp:forward>\</jsp:forward>
                     - 作用:在页面中用于转发操作
                     <jsp:forward page="target.jsp">
                            <jsp:param value="paramValue" name="paramName"/>
                        </jsp:forward>
                     注意:如果转发动作标签不需要设置请求参数,该标签开始与结束标签内部,不允许书写任何内容,(包括空格)

  •  动态包含动作标签

                     - 语法:<jsp:include page="target.jsp">
                      - 作用:动态包含,将其他页面包含到当前页面中。
                      特点:被包含的文件同时会被翻译&编译。(先翻译,再包含)

动态包含与静态包含的区别

 @include指令jsp:include标签
特点静态包含动态包含
语法的基本形式<%@ include file=”…”%><jsp:include page=”…”/>
包含动作发生的时机翻译期间请求期间
是否生成java文件不生成生成
合并方式代码复制合并运行结果
包含的内容文件实际内容页面输出结果
代码冲突有可能不可能
编译次数1包含的文件 + 1
适用范围适用包含纯静态内容(CSS,HTML,JS),或没有非常耗时操作。或大量java代码的jsp包含需要传递参数。含有大量java代码,运算,耗时很长的操作。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值