复习:JSP基本的语法(JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素)
JSP原理:
1. 对于每个请求。jsp容器都会创建一个新的线程来处理它;
2. Servlet容器载入jsp后转换成的servlet(.class文件)是常驻内存的,所以对应速度一般比較快;(第一次可能会稍慢)
3. 当请求处理完毕后。对应对象由JSP容器接收,并以HTML格式响应发回client。
JSP组成:
HTML + JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素
JSP凝视:<!----> / <% %> / <%! %>
JSP指令:page +include + taglib指令
向JSP引擎提供便以信息。能够设计全局变量。如声明类、要实现的方法和输出内容的类型等。一般的。JSP指令在整个页面范围内有效,且并不向client产生不论什么输出。全部的JSP指令都仅仅在当前的整个页面中有效。
格式: <%@指令标记属性1=“属性值1”属性2=“属性值2”%>
Page指令:
共包括13个属性。基本的例如以下:
session:指定JSP页面中能否够使用Session对象;
ErrorPage:当JSP页面出错时,跳转错误处理页面。
contentType:指定JSP页面的编码方式和JSP页面响应的MIME类型;
pageEndoding:指定页面编码格式。
比如:
<%@ page contentType=”text/html;charset=GB2312”import=”java.util.*”%>
<%@ page pageEncoding=”UTF-8” %>
page指令对整个页面有效,而与其书写位置无关,但一般写在页面最上方。
include指令:
文件载入指令。用于在JSP文件里插入一个包括文本或者代码的文件。
它把文件插入后与原来的JSP文件合并成一个新的JSP页面。
<%@ include file=”被包括文件的地址”%>
· 个人认为能够用来封装一些静态的代码块,如:js的倒计时等
taglib指令:
用来引用标签库并设置标签库的前缀。这个指令同意JSP页面使用用户自己定义的标签,它也能够为标签库命名。标签在这个库中定义:
<%@ taglib uri=”tagLibraryURI” prefix=”tagPrefix”%>
包括了连个属性,uri用来指定标签文件或标签库的存放位置,prefix属性用来指定该标签库使用的前缀。
使用如:
<%@ taglib prefix=”c” uri=http://java.sun.com/jsp/jstl/core%>
<s:out value=”taglib example”>
JSP脚本元素
脚本元素是JSP中使用最频繁的元素。通过JSP脚本能够将Java代码嵌入到HTML页面中。全部可运行的Java代码。都能够通过JSP脚本来运行。
三种类型:JSP声明语句 + JSP表达式 + JSP Scriptlets
JSP声明语句
<!% 变量或方法定义%>
JSP表达式:
<%= %>
JSP Scriptlets:
<% code… %>
JSP动作元素
JSP动作元素用来控制JSP行为。运行一些经常使用的JSP页面动作。
通过动作元素能够实现使用多行Java代码能够实现的效果,如动态插入文件、重用JavaBean组件、自己定义标签等。
动作元素:
<jsp:include> + <jsp:forward> +<jsp:param> + <jsp:plugin> + <jsp:useBean> +<jsp:setProperty> + <jsp:getProperty>
后三个用在与JavaBean的连接中。
<jsp:include>
提供了一种在JSP页面中包括页面的方式。
(与<%@ include %>指令不同)这里假设包括JSP动态页面。是先运行其(单独编译运行),之后将其结果返回至现有JSP页面。
<jsp:forward>
用于页面重定向的动作元素。作用是停止当前JSP页面的运行。而将client请求转交给还有一个JSP页面。
转发与重定向差别:转发是在server端进行的,不会引起client的二次请求,因此浏览器的地址栏不会变,效率也比重定向要高。
<jsp:param>
提供參数的附属动作元素,它以“名-值”对的形式为其它动作元素提供附加信息。一般与<jsp:include>/<jsp:forward>/<jsp:plugin>联合使用。
<jsp:param name=“參数名字” value=“參数值”>
与<jsp:include> 一起使用:(页面传值)
<jsp:include page=”sum.jsp”>
<jsp:paramname=”number” value=”200” />
</jsp:include>
· 之后在sum.jsp中,能够使用request.getParameter(“number”)获取200属性值
与<jsp:forward>一起使用:(页面传值)
能够实如今跳转页面同一时候向转向页面传值的功能。
<jsp:forward page=”userinfo.jsp”>
<jsp:paramname=”name” value=”jack”>
</jsp:forward>
<jsp:plugin>动作元素:
能够讲server端的JavaBean或Applet下载到client运行,语法例如以下:
<jsp:userBean>/<jsp:setProperty>/<jsp:getProperty>
都是与JavaBean相关的动作元素。
复习:JSP基本的语法(JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素)的更多相关文章
- JSP基本语法总结【1】(jsp工作原理,脚本元素,指令元素,动作元素)
时隔半年,回头对jsp复习整理一下,温故而知新. jsp工作原理: jsp服务器管理jsp页面分两个阶段:转换阶段(translation phase)和执行阶段(execution phase). ...
- JSP基础总结(运行机制、脚本元素、指令元素、动作元素)
JSP的运行机制: 1.转译阶段:JSP页面转换成Servlet类: 2.请求阶段:Servlet类执行,将相应结果发送至客户端. 流程解释: 1.用户访问某个JSP页面 2.服务器找到相应的JSP页 ...
- JavaWeb学习----JSP脚本元素、指令元素、动作元素
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- JavaWeb学习笔记--2.jsp指令元素、动作元素、内置对象
目录: 一.指令 1.1 page指令 :page指令有13种属性 1.2 include指令:include指令有1种属性,为file.(注意<%@ include%>和<jsp: ...
- JSP脚本元素、指令元素、动作元素
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- jsp篇 之 指令元素和动作元素
Jsp指令元素分类与书写格式: 书写格式: <%@ 指令类型 属性="值" .. %> 分类: [page include taglib]三种. 1,page指令: ...
- 【Head First Servlets and JSP】笔记19:JavaBeans与JSP动作元素(<jsp:setProperty.....>、<jsp:getProperty.....>)
内容来自imooc. 1.什么是JSP动作元素 2.在JSP页面中如何使用Javabeans <jsp:......>表示这是一个JSP动作元素 3.使用JSP动作元素创建JavaBean ...
- JSP基本的语法、3个编译指令、7个动作指令、9个内置对象
一.jsp概述 JSP是java server page的缩写,其本质是一个简化的servlet,是一种动态网页技术标准.jsp页面是在HTML页面中嵌入java程序段.使用jsp开发的应用程序能够跨 ...
- JSP的基本语法
JSP的基本语法 一.JSP页面中的JAVA代码 二.JSP页面中的指令 三.JSP页面中的隐含对象(九大内置对象) 目录 一.JSP页面中的JAVA代码 JSP表达式(方便输出) JSP小脚本(完成 ...
随机推荐
- 《跟孩子学Python》
1:Python对象之间的赋值是内容赋值而不是引用赋值 a = ["aaa","bbb","ccc"] b = a print a prin ...
- Java之创建对象>7.Avoid finalizers
1.Finalizers are unpredictable, often dangerous, and generally unnecessary. 2.never do anything time ...
- 9、java5线程池之定时任务线程池newScheduledThreadPool与newSingleThreadScheduledExecutor
JDK文档描述 newSingleThreadScheduledExecutor() 创建一个单线程执行程序,它可安排在给定延迟后运行命令或者定期地执行.(注意,如果因为在关闭前的执行期间出现失败而终 ...
- 5、探秘JDK5新并发库之原子性操作类
java.util.concurrent.atomic包里提供了 AtomicBoolean 可以用原子方式更新的 boolean 值. AtomicInteger 可以用原子方式更新的 int 值. ...
- JVM常见面试题
1. 内存模型以及分区,需要详细到每个区放什么. 栈区: 栈分为java虚拟机栈和本地方法栈 重点是Java虚拟机栈,它是线程私有的,生命周期与线程相同. 每个方法执行都会创建一个栈帧,用于存放局部变 ...
- 洛谷 P1736 创意吃鱼法
题目描述 题目链接:https://www.luogu.org/problemnew/show/P1736 回到家中的猫猫把三桶鱼全部转移到了她那长方形大池子中,然后开始思考:到底要以何种方法吃鱼呢( ...
- Geocoding java调用百度地图API v2.0 图文 实例( 解决102错误)
如何使用? 第一步:申请ak(即获取密钥),若无百度账号则首先需要注册百度账号. 第二步,拼写发送http请求的url,注意需使用第一步申请的ak. 第三步,接收http请求返回的数据(支持json和 ...
- 信号之sigsetjmp和siglongjmp函数(转)
在信号处理程序中经常调用longjmp函数以返回到程序的主循环中,而不是从该处理程序返回. 但是,调用longjmp有一个问题.当捕捉到一个信号时,进入信号捕捉函数,此时当前信号被自动地加到进程的信号 ...
- windbg cs
!cs 扩展显示一个或多个临界区(critical section)或者整个临界区树 !cs Address 指定要显示的临界区地址.如果省略该参数,调试器显示当前进程中所有临界区. :> ...
- 纯CSS兑现侧边栏/分栏高度自动相等(转)
这里直接介绍我认为的最佳的侧边栏/分栏高度自动相等方法.核心的CSS代码如下(数值不固定): margin-bottom:-3000px; padding-bottom:3000px; 再配合父标签的 ...