web页面设计人员真的必须懂 java ? web页面人员可以很快学习 EL 语言.

目前不知道 EL 应用前景如何, 但是我们香港系统没有使用 EL.

include 指令

include指令告诉容器, 复制包含文件中的所有内容, 再把它粘贴到这个文件中, 而且就放在这里…

标准页眉文件(“Header.jsp”) 我们希望在我们的web应用的每个页面中都显示html内容, 我们希望每个jsp都显示这个页眉.

Header.jsp

<html>
<body>
<img src="data:images/web-services.jpg"><br>
<em><strong>we know how to make SOAP</strong></em><br>
</body>
</html>

web 应用中的一个 jsp (contract.jsp)
<html>
<body>
<%@ include file="Header.jsp"%>
<br>
<em>We can help</em>
</body>
</html>

<jsp:include>标准动作, 标准动作看上去和include指令是一样的, 内部原理不同, 如果使用include指令, 这与你打开jsp页面, 并粘贴上”Header.jsp”的内容没有两样, 换句话说就好像你把页眉文件的代码重复放在其他JSP中一样
<jsp:include>完全不同, 它不是从 “Header.jsp”复制源代码, include标准动作会再运行时插入”Header.jsp”的响应. 
利用 include指令, 容器要做很多工作, 不过这些工作只是针对第一个请求才需要做, 从第二个请求开始, 就再没有额外的运行时开销了.
个人推荐这种 include 指令
另外, include的位置是敏感的, 即指令的代码位置就会代表着这个指令的插入位置.
另外, 我们为页眉建立了一个页面, Header.jsp, 它本身是一个很正常的jsp, 有自己的开始和结束html和body标记, 然后又建立了contact.jsp,
这个jsp 也有正确的开始和结束标记, 被包含文件中的所有内容都会粘贴到有 include 指令的页面中, 也就是说, html 与 body 等标记重复了.
正确的做法:
把被包含文件中的开始和结束标记去掉, 这样一来, 被包含文件本身确实不能再生成合法的HTML页面了; 它们现在必须被包含在一个有声明了html 和 body 标记的更大的页面中.
Header.jspf, 注意这个扩展名是 jspf 是对jsp 片段的约定
<img src="data:images/web=services.jpg"><br>
<em><strong>We know hwo to make SOAP suck less. </strong></em><br>

Contact.jsp

<html><body>
<%@ include file="Header.jspf" %><br>
<%@ include file="Footer.html" %>
</body></html>

注意这个include指令的位置.

使用<jsp: param>定制包含的内容, 把子标题信息作为新的请求参数交给被包含的页面.

Header.jspf 中增加 <em><strong>${param.subTitle}</strong></em>

<jsp: forward> 标准动作
<% if (request.getParameter(“userName”) == null ) {%>


<jsp:forward page=”Handleit.jsp”>

<%}%>

HeadFirst jsp 08 无脚本JSP的更多相关文章

  1. 【Head First Servlets and JSP】笔记21:从有脚本到无脚本

    可以建立多态的bean引用吗 使用type,但没有class scope属性默认为“page” 从有脚本到无脚本 1.快速搭建一个测试环境:输入用户名,返回“Hello, 用户名” index.htm ...

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

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

  3. 《Head First Servlets & JSP》-8-无脚本的JSP

    以前servlet和JSP交互的代码 servlet代码示例: JSP代码示例: 若属性不是一个String而是一个Bean呢? 一个简单的JavaBean servlet代码示例: JSP代码示例: ...

  4. 基于JQuery+JSP的无数据库无刷新多人在线聊天室

    JQuery是一款非常强大的javascript插件,本文就针对Ajax前台和JSP后台来实现一个无刷新的多人在线聊天室,该实现的数据全部存储在服务端内存里,没有用到数据库,本文会提供所有源程序,需要 ...

  5. JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象

    Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...

  6. 下列哪个为JSP的小脚本的标签?(选择1项)

    下列哪个为JSP的小脚本的标签?(选择1项) A.<% %> B.<@ %> C.<%! %> D.<%– %> 解答:A

  7. JSP+Servlet 无数据库模拟登录过程

    程序目录结构: index.jsp: <%@ page language="java" contentType="text/html; charset=utf-8& ...

  8. 《Head First Servlets & JSP》-7-使用JSP

    学习的知识点 JSP,最后会变成一个servlet JSP最终或变成一个完整的servlet在Web应用中运行,只不过这个servlet类会由容器写好. JSP中的scriptlet 所谓script ...

  9. 11、Jsp加强/EL表达式/jsp标签

    1 Jsp基础回顾 Jsp基础 1)Jsp的执行过程 tomcat服务器完成:jsp文件->翻译成java文件->编译成class字节码文件-> 构造类对象-> 调用方法 to ...

随机推荐

  1. 使用notepad++进行替换

    将 aaa bbb ccc 转化为 #define AAA aaa #define BBB bbb #define CCC ccc 查找(.*),替换为#define $1 "$1" ...

  2. Android多点触控技术,实现对图片的放大缩小平移,惯性滑动等功能

    首先推荐一下鸿洋大大的打造个性的图片预览与多点触控视频教程,这套教程教我们一步一步实现了多点触控实现对图片的平移和缩放的功能.这篇文章我将在鸿洋大大的基础之上做了一些扩展功能: 1.图片的惯性滑动 2 ...

  3. springboot中generator相关配置文件

    generator.properties # jdbc jdbc.driverClass = com.mysql.jdbc.Driver jdbc.url = jdbc:mysql://localho ...

  4. C语言的不完整类型和前置声明(转)

    声明与定义(Declaration and Definition) 开始这篇文章之前,我们先弄懂变量的declaration和definition的区别,即变量的声明和定义的区别. 一般情况下,我们这 ...

  5. javascript获取地址栏参数

    http://gzycm520.blog.51cto.com/175220/71030方法一: <script type="text/javascript"> < ...

  6. laravel使用的模板引擎 blade

    使用blade引擎的话必须在控制器中使用use   Blade

  7. python --正则学习

    re的正则表达式语法    正则表达式语法表如下: re.match re.match 尝试从字符串的开始匹配一个模式,匹配成功返回match object,否则返回None. 如:下面的例子匹配第一 ...

  8. Android 使用Post方式提交数据

    在Android中,提供了标准Java接口HttpURLConnection和Apache接口HttpClient,为客户端HTTP编程提供了丰富的支持. 在HTTP通信中使用最多的就是GET和POS ...

  9. 使用TestFlight邀请外部人员測试APP

    怎样使用TestFlight邀请外部人员測试APP 详细过程例如以下: 1.在邀请測试人员的时候.按上线流程打包APP,提交. 2.提交审核,在邀请測试员的时候,你必须先提交审核,苹果会在大约2个工作 ...

  10. AutoFac文档3(转载)

    目录 开始 Registering components 控制范围和生命周期 用模块结构化Autofac xml配置 与.net集成 深入理解Autofac 指导 关于 词汇表 服务类型,名称和键 同 ...