JSP--内置对象&动作标签介绍
1.JSP中常用的9大内置对象?
内置对象:在JSP页面中能直接使用的对象就是JSP内置对象,事实上,JSP底层就是一个java类,可以在JSP中直接使用的,必然存在JSP翻译后的java类
下面简单介绍内置对象:
HttpServletRequest request :请求
HttpServletResponse response :响应
HttpSession session session:会话
ServletContext application:表示当前项目对象
ServletConfig config:专门获取当前这个Servlet的配置信息
Object page = this:表示当前JSP页面对象,只能在页面使用,在其他的地方无法使用
总结:web中的四个域对象(容器对象)范围比较从小到大依次为:
Page(当前页面) (当前项目的根路径) < request(一次请求)(商品) < session(一次会话,多次请求)(昵称) < ServletContext(整个项目)在线人数
PageContext pageContext:表示JSP页面上下文对象 也是一个工具类
作用:1.就是获取其它八大内置对象 2. 向四个web容器(page request session application )设置数据 3.向四个web容器(page request session application )获取数据
案例:
<%-- 演示pageContext获取其他8个内置对象 --%> <%= pageContext.getException() %><br>
<%= pageContext.getOut() %><br>
<%= pageContext.getPage() %><br>
<%= pageContext.getRequest() %><br> <%= pageContext.getResponse() %><br>
<%= pageContext.getServletConfig() %><br>
<%= pageContext.getServletContext() %><br>
<%= pageContext.getSession()%><br>
<hr>
<%-- 演示设置数据和取出数据 --%>
存数据
<%
pageContext.setAttribute("addr", "马尔代夫", pageContext.APPLICATION_SCOPE);
pageContext.setAttribute("addr", "云南", pageContext.SESSION_SCOPE);
pageContext.setAttribute("addr", "新加坡", pageContext.REQUEST_SCOPE);
pageContext.setAttribute("addr", "东莞", pageContext.PAGE_SCOPE); %>
<%=pageContext.APPLICATION_SCOPE %><br>
<%=pageContext.SESSION_SCOPE %><br>
<%=pageContext.REQUEST_SCOPE %><br>
<%=pageContext.PAGE_SCOPE %><br>
取数据
<%=pageContext.getAttribute("addr", pageContext.APPLICATION_SCOPE) %><br>
<%=pageContext.getAttribute("addr", pageContext.SESSION_SCOPE) %><br>
<%=pageContext.getAttribute("addr", pageContext.REQUEST_SCOPE) %><br>
<%=pageContext.getAttribute("addr", pageContext.PAGE_SCOPE) %><br>
JspWriter out:作用:out它主要是用来把数据输出到页面(相当于response.getWriter())
<% out.write("哈哈"); %><br>
<% response.getWriter().write("呵呵<br>"); %>
<% out.write("嘿嘿"); %><br>
Throwable exception:主要是保存JSP页面上的异常信息的对象 内置对象exception,在jsp页面上要能够使用exception内置对象,在jsp的page指令中,必须书写isErrorPage=true,否则在页面上是无法使用exception内置对象
2.动作标签
JSP页面中是可以嵌入Java代码完成我们的功能,但是后期开发中JSP页面中是不写任何Java代码的(页面上本来,就应该没有java代码,页面本来就是前端工程师开发)。 而在JSP中给我们提供了一些内置的标签,可以代替Java代码。
jsp:include标签 :
作用:引入其他页面,合并成一个页面,展示。(动态引入)
<%-- <%@include file="header.jsp" %> --%>
<%--
JSP中的内置标签:
jsp:include 它和 jsp的include指令功能相同
jsp:include内置的标签,它是动态的包含,当使用它引入多个JSP页面的时候,
在翻译引入的所有JSP为Java文件的时候,会翻译成不同的Java文件,只有在
程序运行的时候,才会把需要包含的内容引入进来。
jsp的include指令 它是静态的包含 在翻译的时候就把所有的JSP合并成一个Java程序 --%> <jsp:include page="header.jsp"/><br>
这是新闻主体<br>
jsp:forward标签:主要是起到我们在Servlet中学习的request的请求转发的作用。
<%-- 演示jsp froward标签 --%>
<jsp:forward page="index.jsp"></jsp:forward>
JSP--内置对象&动作标签介绍的更多相关文章
- day12(jsp指令&内置对象&动作标签、JavaBean、EL表达式&函数库)
day12 JSP指令 JSP指令概述 JSP指令的格式:<%@指令名 attr1="" attr2="" %>,一般都会把JSP指令放到JSP文件 ...
- JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象
Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...
- JavaWeb之 JSP:内置对象,EL表达式,JSP标签基础
JSP的内置对象 什么是JSP的内置对象呢? 在JSP页面进行编程的时候,如果我们要使用一些对象,如:HttpSession,ServletConfig,ServletContext这些对象,如果每次 ...
- JavaWeb学习----JSP内置对象详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- jsp内置对象分析
1.html表单的提交方式比较: 1.1.get方式:将表单内容经过编码之后 ,通过URL发送, 使用get方式发送时有255个字符的限制. 1.2.post方式:将表单的内容通过http发送,pos ...
- JSP内置对象-request
JSP内置对象即无需声明就可以直接使用的对象实例,在实际的开发过程中,比较常用的JSP对象有request,response,session,out和application等,笔者在本文章中将简单介绍 ...
- Java遇见HTML——JSP篇之JSP内置对象(上)
一.JSP内置对象简介 1.1.内置对象简介 JSP内置对象是WEB容器中创建的一组对象,可以直接使用不需要new,如截图中的out 对象. JSP有九大内置对象: 五大常用对象: out.reque ...
- jsp内置对象 的使用范围和类型【说明】
jsp内置对象 jsp内置对象有以下9种,我们会在后面的章节中分别介绍他们.这9种对象例如以下: 名称 类型 使用范围 request javax.servlet.http.HttpServletRe ...
- 常用的JSP内置对象(1)
常用的JSP内置对象 request对象主要用于处理客户端请求 request对象的作用是与客户端交互,收集客户端的Form.Cookies.超链接,或者收集服务器端的环境变量. request对象常 ...
随机推荐
- Caffe模型读取
caffe模型最终保存使用过的protobuf形式,将一个已经训练好的caffe模型读取出来,可以参考如下: 1,包含的头文件: #include <google/protobuf/io/cod ...
- Python:Django【基础篇】
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- CentOS6.X 升级内核至 3.10
1.1 查看当前版本 [root@localhost ~]# uname -r -.el6.x86_64 1.2 导入public key [root@localhost ~]# rpm --impo ...
- Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.4——更新新版本的Gradle
问题: 你需要更新应用的Gradle版本. 解决方案: 生成一个新的wrapper,或者直接修改属性文件(.properties). 讨论: Android Studio包含了一个Gradle的分发. ...
- easy 正则表达式验证 封装
基于EasyUI ValidateBox 的表单验证,可以直接写正则表达式. 在页面加载时执行下面代码 if ($.fn.form) { $.extend($.fn.validatebox.defau ...
- linux下tmp目录里很多php开头的文件
cd /tmp; ll -ash; 51M -rw------- 1 nginx nginx 51M Sep 17 09:33 php3p7FPA 51M -rw------- 1 nginx ngi ...
- Java基础 - 流程控制语句
package com.demo4; /* * 流程控制语句 * 流程控制语句分类: * 顺序结构 * 代码从上往下按照顺序执行 * * 选择结构 * if * if (关系表达式1) { * 语句体 ...
- jq cookie
//$.cookie("xx");//读取xx的值 //$.cookie("xx","123");//设置xx的值为123 //$.cook ...
- POCO c++ 使用例子
.定时器 #include "Poco/Timer.h" #include "Poco/Thread.h" using Poco::Timer; using P ...
- IDEA 跑spring项目找不到get,set的问题
@Autowired的用法和作用 这个注解就是spring可以自动帮你把bean里面引用的对象的setter/getter方法省略,它会自动帮你set/get. iDEA下安装lombok这个插件就可 ...