在一个JSP页面中,可以包括指令标识、HTML代码、JavaScript代码、嵌入的Java代码、注释和JSP动作标识等内容。但是这些并不是JSP页面所必须的。

1 指令标识
指令标识主要用于设定整个JSP页面范围内都有效的相关信息。它被服务器所解释执行,并不会产生任何内容输出到网页中。
JSP指令标识的语法格式如下:
<%@ 指令名 属性1="属性值1" 属性2="属性值2"...%>
参数说明:
指令名:用于指定指令名称,在JSP中包含page、include和taglib 3条指令
属性:用于指定属性名称,不同的指令包含不同的属性。在一个指令中,可以设置多个属性,各属性之间用逗号或者空格分隔
属性值:用于指定属性值

1.1 page指令
page指令是JSP页面中最常用的指令,用于定义整个JSP页面的相关属性,这些属性在JSP被服务器解析成Servlet时会被转换为相应的Java程序代码。
<%@ page attr1="value1" attr2="value2" ...%>
1、language属性
2、extends属性
3、import属性
4、pageEncoding属性
5、contentType属性
6、session属性
7、buffer属性
8、autoFlush属性
9、isErrorPage属性
10、errorPage属性

1.2 include指令
文件包含指令include,通过该指令可以在一个JSP页面中包含另一个JSP页面。不过该指令是静态包含,也就是被包含文件中所有内容都会被原样包含到该JSP页面中,即使被包含文件中有JSP代码,在包汉中也不会被编译执行。使用include指令,最终将生成一个文件,所以在被包含和包含的文件中,不能有相同名称的变量。
<%@include file="path"%>
注意:在应用include指令进行文件包含时,为了使整个页面的层次结构不发生冲突,建议在被包含页面中将<html> <body>等标记删除。因为在包含该页面的文件已经制定这些标记

1.3 taglib指令
在JSP文件中么可以通过taglib指令标识声明该页面中所使用的标签库,同时引用标签库,并制定标签的前缀。在页面中引用标签库之后,就可以通过前缀来引用标签库中的标签。
<%@taglib prefix="tagPrefix" uri="tagURI"%>

2 脚本标识
在JSP页面中,脚本标识能够方便灵活地生成页面中的动态内容。
JSP的脚本标识包含3个部分,即JSP表达式 声明标识和代码片段。

2.1 JSP表达式
用于向页面中输出信息,其语法格式如下:
<%= 表达式%>
表达式可以是任何java的完整表达式。该表达式的最终运算结果将被转换为字符串。
注意%与=之间不能够有空格

2.2 声明标识
声明标识用于在JSP页面中定义全局的变量或方法。通过标识定义的变量和方法可以被整个JSP页面访问。
<%! 声明变量或方法的代码 %>

2.3 代码片段
所谓代码片段就是在JSP页面中嵌入的Java代码或脚本代码。代码片段将在页面请求的处理期间被执行,通过Java代码可以定义变量或流程控制语句灯;通过脚本代码可以应用JSP的内置对象在页面输出内容、处理请求和响应、访问session会话等。
<%Java代码或者脚本代码%>

3 JSP动作标识

3.1 包含文件标识<jsp:include>

用于向当前页面中包含其他文件。

<jsp:include page="url" flush="false|true">
子动作标识<jsp:param>
</jsp:include>

3.2 请求转发标识<jsp:forward>

可以将请求转发到其他的Web资源,例如另一个JSP页面、HTML页面、servlet灯。执行请求转发后,当前页面将不再被执行,而失去执行该标识指定的目标页面。

Java Web开发——JSP基本语法杂记的更多相关文章

  1. Java Web开发——HTML CSS JavaScript 杂记

    HTML是一种在互联网上常见的网页制作标注性语言,并不能算作一种程序设计语言.因为它相对程序设计语言来说缺少了其应所有的特征.对于网站设计人员来说,只使用HTML是不够的,需要在页面中引入CSS样式. ...

  2. Java Web 之 Jsp 常用语法总结

    一.小脚本语法 <% code fragment %> 语法编写为XML的形式,效果相同,如下所示: <jsp:scriptlet> code fragment </js ...

  3. Java Web开发技术教程入门-JSP基本语法和九大内置对象

    这两天气温逐渐升高,好想把自己泡在冰块里······ 恩嗯摁蒽恩嗯摁蒽恩嗯摁蒽恩嗯摁蒽.......今天阅读到了这本书的第四章-JSP基本语法.经过第一天的阅读,我们明白JSP技术是Java Web开 ...

  4. Java Web开发之详解JSP

    JSP作为Java Web开发中比较重要的技术,一般当作视图(View)的技术所使用,即用来展现页面.Servlet由于其本身不适合作为表现层技术,所以一般被当作控制器(Controller)所使用, ...

  5. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  6. java web 开发入门 --- tomcat/servlet/jsp

    在做java web 开发时,要先安装tomcat.它是一个web服务器,也叫web容器,我们把写好的jsp, html页面放到它里面,然后启动它,就可以用浏览器访问这些页面,地址栏中输入localh ...

  7. java web开发必备知识

    从各种招聘网站的要求上筛选出了一些java开发的一些基本的要求,对照自身看看有哪些缺陷. java基础 既然是java web开发,java SE肯定要学好了. 多线程,IO,集合等,对队列,缓存,消 ...

  8. Java Web开发模式

    一 Java Web开发模式的变迁 1 最初的Java web服务器端编程技术是Servlet,利用Servlet就可以开发出一个Web应用程序. 2 为了解决Servlet缺陷,SUN推出了JSP技 ...

  9. Java Web(六) JSP

    现在的Java Web开发已经很少使用JSP脚本了,业务逻辑都交给Servlet处理,JSP只负责显示视图,所以接下来的内容就对JSP脚本不做叙述了... JSP概述 JSP全名为Java Serve ...

随机推荐

  1. HTML5标签的兼容处理

    /* 当使用HTML5标签时为了兼容问题必须声明告诉浏览器这是标签 html5shiv.js这个插件已经帮你声明了所有HTML5的标签不需要自己声明 */ /* 这是告诉浏览器这是一个标签 */doc ...

  2. NOIP模拟7

    期望得分:100+100+20=220 实际得分:100+95+20=215 T1 洛谷 P1306 斐波那契公约数 #include<cstdio> #include<cstrin ...

  3. Shiro实战教程(二)

    http://www.jianshu.com/p/6786ddf54582/ https://www.cnblogs.com/ealenxie/p/10610741.html

  4. uefi模式下win10安装双系统ubuntu18.04LTS

    自己折腾了半天,血与泪啊(难得一个可爱的周末 wwww我一定要写下来 跟这个博客几乎一模一样了 https://blog.csdn.net/xrinosvip/article/details/8042 ...

  5. centos6.5 导入matplotlib报错 No module named '_tkinter

    1.解决方案 在centos系统下,导入matplotlib时,出现ImportError: No module named ‘_tkinter’的错误,首先 yum list installed | ...

  6. JSP分页之结合Bootstrap分页插件进行简单分页

    结合Bootstrap的分页插件实现分页,其中策略是每次显示5个按钮,然后根据当前页的不同来进行不同的显示: 1. 当前页<3,如果当前页大于5页就显示前五页,不然就显示1~totalPage. ...

  7. Java的继承和多态

    看了博客园里面的一个文章,关于java的继承和多态: class A ...{ public String show(D obj)...{ return ("A and D"); ...

  8. python中随机数生成

    1.random.random random.random()用于生成一个0到1的随机符小数: 0 <= n < 1.0 2.random.uniform random.uniform的函 ...

  9. webgote的例子(3)Sql注入(SearchPOST)

    Sql注入(Search/POST) (本章内容):post的方式进行注入 今天来讲一下sql注入的另一个例子(post) 上一个用的是get请求的方法将我们的参数传到服务器进行执行 上图中的标红是需 ...

  10. hash算法搜索获得api函数地址的实现,"kernel32.dll", "CreateThread"

    我们一般要获得一个函数的地址,通常采用的是明文,例如定义一个api函数字符串"MessageBoxA",然后在GetProcAddress函数中一个字节一个字节进行比较.这样弊端很 ...