JSP动作和内置对象
前言:
这节的内容很简单,简单总结下。
一、动作元素
动作元素:主要在请求处理阶段起作用,能够影响输出流和对象的创建、使用修改等,它按照XML语法进行书写。
动作元素分为两类:
- 一类是标准的动作元素。
- 一类是用户或第三方提供的定制动作。
JSP中常用的动作元素有三个:Include、forward、param。
1、include动作
<jsp:include>
操作允许JSP页面在执行过程中包含静态和动态页面,静态页面直接将内容加入到包含JSP页面中,动态页面先由服务器进行执行,然后将执行后的结果合并到包含页面中。
格式:
<jsp:include page="relativeURL|<%=expression%>" flush=“true|false”/>
其中,page表示所包含文件的相对URL,可以是一个字符串也可以是JSP表达式;flush的值为true时,表示当缓冲区满时将被清空,默认为false。
与指令包含的对比:
beincluded.jsp(被包含文件)
<%@ page pageEncoding="gbk" %>
<font color=red size=7>Hello EveryOne</font>
inc1.jsp(动作包含)
<%@ page pageEncoding="gbk" %>
动作包含:<p>
<jsp:include page="beincluded.jsp"/>
inc2.jsp(指令包含)
<%@ page pageEncoding="gbk" %>
指令包含:<p>
<%@ include file="beincluded.jsp"%>
二者包含方式的不同:
- 动作包含:运行时包含文件
- 指令包含:编译时包含文件
编译和运行的区别:
1.编译就是将java代码交给编译器进行语法检查,如果没有错误就生成.class文件
2.运行就是将字节码文件(.class)交给java虚拟机执行,如果没有逻辑错误,就成功出现结果。
注:
如果被包含文件很少发生变化,那么请使用指令进行包含,其运行速度快于 jsp:include;使用jsp:include 包含内容经常发生变化的内容。
2、forward动作
<jsp:forward>
动作允许将当前的请求转发至另一个动态页面或Servlet。
格式:
<jsp:forward page="relativeURL|<%=expressiong%>"/>
其中,page表示要转发文件的相对URL,可以是个字符串也可以是一个JSP表达式。
注意:一旦JSP页面中使用<jsp:forward>
标签,其后的程序将无法执行!
例:
now.jsp(当前文件):
<%@ page contentType="text/html;charset=gb2312"%>
跳转之前的内容
<jsp:forward page="next.jsp"/>
跳转之后的内容
next.jsp(跳转的目的地文件):
<%@ page contentType="text/html;charset=gb2312"%>
这里是跳转之后的next.jsp
3、param动作
<jsp:param>
传递一个或多个参数到指定的动态文件,需要和<jsp:include>
、<jsp:forward>
一起使用,能在一个页面中使用多个<jsp:param>
来传递多个参数。
格式:
<jsp:param name="pName" value="pValue">
例如:
<jsp:param name="user" value="jason"/>
<jsp:param name="pwd" value="123"/>
当在用<jsp:include>
或<jsp:forward>
时,被包含的页面或转向后的页面会首先看看request对象中除了原本的参数值以外,有没有再增加新的参数值,如果有新增加的参数值时,则新的参数值在执行时,有较高的优先权。
二、内置对象
什么是内置对象?
- 答:JSP的内置对象是指在JSP页面系统中已经默认内置的Java对象,这些对象不需要开发人员显式声明即可使用。在JSP页面中,可以通过存取JSP内置对象实现与JSP页面和Servlet环境的相互访问。
JSP中一共预先定义了9个这样的对象,分别为:
具体的用法和servlet的使用基本一样,只是不用先声明了,就不总结了 = ̄ω ̄=
🆗,这次的动作元素和内置对象就总结到这了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下