Microsoft PowerPoint - 11-page-Directive-Chinese.ppt

Similar documents
Microsoft PowerPoint - 05-Status-Codes-Chinese.ppt

Microsoft PowerPoint - 02-Servlet-Basics-Chinese.ppt

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

Microsoft PowerPoint - 12-File-Inclusion-Chinese.ppt

Microsoft Word - 01.DOC

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

09 (File Processes) (mkdir) 9-3 (createnewfile) 9-4 (write) 9-5 (read) 9-6 (deletefile) 9-7 (deletedir) (Exercises)

新・解きながら学ぶJava

untitled

AUCWA0501p00A.indd

本章学习目标 小风 Java 实战系列教程 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc

JSP基础编程

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

(CIP) Web /,. :, ISBN X.W T P393.4 CIP (2004) Web ( ) ( / ) : * 787

3.1 num = 3 ch = 'C' 2

Microsoft PowerPoint - 09-JSP-Intro-Chinese.ppt

Chapter 9: Objects and Classes

EJB-Programming-4-cn.doc

第十一届“21世纪杯”全国中小学生英语演讲比赛

060522達文西密碼_全_.PDF

untitled

基于CDIO一体化理念的课程教学大纲设计

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

A-1 HTML A-1-1 HTML 1 HTML JSP HTML HTML HTML JSP A HTML HTML HTML HTML HTML HTML HTML HTML.htm.html HTML Windows NotePad HTML IE [ / ] NotePad A-2

jsp

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

Java

无类继承.key

Microsoft Word - ISPI_CATALOG_BOOKLETS_ _Final.doc

untitled

没 有 多 余 的 Contruol 或 Action 了 原 来 Domain 层 被 服 务 层 Service layer 遮 挡, 在 右 边 图 中, 则 Domain 层 直 接 暴 露 给 前 台 了, 没 有 被 遮 挡, 裸 露 了 这 样 一 步 到 位 实 现 领 域 模 型

Microsoft PowerPoint - 07-Cookies-Chinese.ppt

Java的详细介绍

Microsoft PowerPoint - 10-JSP-Scripting-Elements-Chinese.ppt

RUN_PC連載_8_.doc

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

3. 流 程 管 理 ( 系 统 管 理 员 或 者 教 务 处 管 理 员 主 要 操 作 功 能 部 分 ) 系 统 管 理 员 发 布 的 供 学 校 登 录 人 员 查 看 校 内 公 告 信 息 ; 系 统 管 理 员 审 核 提 前 实 习 的 学 生 申 请 ; 系 统 管 理 员 审

约 伯 记 : 约 伯 记 : 惟 有 我 一 人 逃 脱, 来 报 信 给 你 他 还 说 话 的 时 候, 又 有 人 来 说 : 你 的 儿 女 正 在 他 们 长 兄 的 家 里 吃 饭 喝 酒, 不 料, 有 狂 风 从 旷 野 刮 来, 击 打 房 屋 的 四 角, 房 屋 倒 塌 在

加 拉 太 书 :8 2 加 拉 太 书 2:4 8 过 了 三 年, 才 上 耶 路 撒 冷 去 见 矶 法, 和 他 同 住 了 十 五 天 9 至 于 别 的 使 徒, 除 了 主 的 兄 弟 雅 各, 我 都 没 有 看 见 20 我 写 给 你 们 的 不 是 谎 话, 这 是 我 在 神

D getinitparameternames() 9 下 列 选 项 中, 属 于 Servlet API 中 提 供 的 request 对 象 的 包 装 类 的 是 ( ) A HttpServletRequestWrapper B HttpServletRequest C HttpServ

秘密大乘佛法(下)

國立臺東高級中學102學年度第一學期第二次期中考高一國文科試題

Page 2 of 12

Microsoft Word - Sunday

鎶ョ焊0

!! :!!??!!?!??!!!... :... :'?'?! :' ' :'?' :'?' :'!' : :? Page 2

<D2B0D0C4D3C5D1C52DC8CED6BEC7BF202D20BCC7CAC2B1BE>

Microsoft PowerPoint - 06-Response-Headers-Chinese.ppt

前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii

ch_code_infoaccess

Microsoft PowerPoint - 01-Overview-and-Setup-Chinese.ppt

CHAPTER 1

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

WebSphere Studio Application Developer IBM Portal Toolkit... 2/21 1. WebSphere Portal Portal WebSphere Application Server stopserver.bat -configfile..

浪潮集团信息化文案

第一章 章标题-F2 上空24,下空24

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

南華大學數位論文

( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

untitled

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

untitled

RUN_PC連載_10_.doc

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

特 别 提 示 一 依 据 中 华 人 们 共 和 国 证 券 法 ( 以 下 简 称 证 券 法 ) 上 市 公 司 收 购 管 理 办 法 ( 以 下 简 称 收 购 办 法 ) 公 开 发 行 证 券 的 公 司 信 息 披 露 内 容 与 格 式 准 则 第 15 号 权 益 变 动 报 告

HK 08/ HK 09/ HK 03/ HK 01/ HK 05/ HK 05/ HK 05/

HK 05/ HK 08/ HK 11/ HK 03/ HK 09/ HK 03/ HK 09/

HK 11/ HK 01/ HK 07/ HK 07/ HK 08/ HK 03/ HK 11/

EJB-Programming-3.PDF

Servlet

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

Yih-Chuan Lin Tsung-Han Wu Hsin-Te Wu Hsiao-Hui Hsu Department of Computer Science and Information Engineering Shu-Te University

强迫症毁灭天才

Microsoft Word - 第3章.doc

2 从 事 道 工 程 专 教 道 工 程 工 程 测 量 轨 道 交 通 工 程 道 桥 土 木 工 程 本 科 30 ; ; 本 科 毕 生 要 求 具 有 2 年 及 岗 位 所 需 专 中 级 及 专 称 具 有 本 专 二 级 及 建 造 师 执 资 格 证 书 者 优 先, 需 要 经

万 法 归 宗 :20 跟 随 守 正, 就 是 好, 反 正 能 捞 钱 就 是 好 万 法 归 宗 :13 今 天 我 知 道 要 收 回 去, 为 什 么, 看 看 东 方 财 富 和 乐 视 就 知 道 了, 要 有 说 法 了, 下 一

Microsoft Word - (web)_F.1_Notes_&_Application_Form(Chi)(non-SPCCPS)_16-17.doc

黔卫计发〔2015〕4号(两单位)(人事处)-网络版

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持

1.5招募说明书(草案)

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

RxJava

國家圖書館典藏電子全文

1

<4D F736F F D20BBF9D3DA416E64726F6964C6BDCCA8B5C4B5E7D7D3C5C4C2F4CFB5CDB32E646F63>

<4D F736F F D D352DBED6D3F2CDF8D7E9BDA8D3EBB9DCC0EDCFEEC4BFBDCCB3CCD5FDCEC42E646F63>

xueshu004.doc

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

Microsoft PowerPoint - 08-Session-Tracking-Chinese.ppt

untitled

WWW PHP Comments Literals Identifiers Keywords Variables Constants Data Types Operators & Expressions 2

0704

Microsoft Word - 改版式网页全文.doc

目 录 第 一 部 分 档 案 局 概 况 一 主 要 职 责 二 部 门 决 算 单 位 构 成 第 二 部 分 档 案 局 2016 年 度 部 门 预 算 表 一 2016 年 度 市 级 部 门 收 支 预 算 总 表 二 2016 年 度 市 级 部 门 支 出 预 算 表 三 2016

2015 年 度 收 入 支 出 决 算 总 表 单 位 名 称 : 北 京 市 朝 阳 区 卫 生 局 单 位 : 万 元 收 入 支 出 项 目 决 算 数 项 目 ( 按 功 能 分 类 ) 决 算 数 一 财 政 拨 款 一 一 般 公 共 服 务 支 出 二

Microsoft Word G...doc

附件2

Transcription:

2004 Marty Hall 控制所生成的 servlet 的结构 :JSP page 指令 JSP, Servlet, & Struts Training Courses: http://courses.coreservlets.com Available in US, China, Taiwan, HK, and Worldwide 2 JSP and Servlet Books from Sun Press: http://www.coreservlets.com Available in English, Chinese (simplified and traditional script), and 12 other languages 议程 page 指令的用途 指定导入类 指定页面的 MIME 类型 生成 Excel 电子表格 会话的共享 设置输出缓冲区的大小和行为 指定处理 JSP 错误的页面 控制线程的行为 3 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

page 指令的用途 为根据 JSP 页面生成的 servlet 指定高层的信息 能够控制 导入哪些类 该 servlet 扩展哪个类 产生哪种 MIME 类型 如何处理多线程 servlet 是否共享会话 输出缓冲区的大小的行为 由哪个页面来处理意外的错误 4 JSP/servlet/Struts/JSF training: http://www.coreservlets.com import 属性 <%@ page import="package.class" <%@ page import="package.class1,...,package.classn" 在 servlet 定义的顶部生成导入语句 尽管 JSP 页面几乎可以放在服务器的任何位置, 但由 JSP 使用的类必须放在常规的 servlet 目录中 例如 : /WEB-INF/classes 或 /WEB-INF/classes/directoryMatchingPackage 由 JSP 使用的实用工具类一定要使用包! 5 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

使用包的重要性 系统会认为 SomeHelperClass 和 SomeUtilityClass 在哪个包中呢?... public class SomeClass { public String somemethod(...) { SomeHelperClass test = new SomeHelperClass(...); String somestring = SomeUtilityClass.someStaticMethod(...);... } } 6 JSP/servlet/Struts/JSF training: http://www.coreservlets.com 使用包的重要性 ( 续 ) 系统会认为 SomeHelperClass 和 SomeUtilityClass 在哪个包中呢?... <% SomeHelperClass test = new SomeHelperClass(...); String somestring = SomeUtilityClass.someStaticMethod(...); 7 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

import 属性 : 示例 ( 代码 ) <H2>The import Attribute</H2> <%@ page import="java.util.*,coreservlets.*" <%! private String randomid() { int num = (int)(math.random()*10000000.0); return("id" + num); } private final String NO_VALUE = "<I>No Value</I>"; <% String oldid = CookieUtilities.getCookieValue(request, "userid", NO_VALUE); if (oldid.equals(no_value)) { String newid = randomid(); Cookie cookie = new LongLivedCookie("userID", newid); response.addcookie(cookie); } This page was accessed on <%= new Date() with a userid cookie of <%= oldid. </BODY></HTML> 8 JSP/servlet/Struts/JSF training: http://www.coreservlets.com import 属性 : 示例 ( 结果 ) 9 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

contenttype 和 pageencoding 属性 <%@ page contenttype="mime-type" <%@ page contenttype="mime-type; charset=character-set" <%@ page pageencoding="character-set" 指定由 JSP 页面生成的 servlet 生成的页面的 MIME 类型 属性值不能在请求期间计算得出 常见 MIME 类型的表格, 参见介绍响应报头的章节 10 JSP/servlet/Struts/JSF training: http://www.coreservlets.com 生成 Excel 电子表格 First Last Email Address Marty Hall hall@coreservlets.com Larry Brown brown@coreservlets.com Steve Balmer balmer@ibm.com Scott McNealy mcnealy@microsoft.com <%@ page contenttype="application/vnd.ms-excel" <%-- There are tabs, not spaces, between cols. -- 11 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

条件性地生成 Excel 电子表格 不能使用 contenttype 属性完成这项任务, 因为我们不能根据条件生成 contenttype 下面的代码产生的一定是 Excel MIME 类型 <% boolean usingexcel = checkuserrequest(request); <% if (usingexcel) { <%@ page contenttype="application/vnd.ms-excel" <% } 解决方案 : 使用常规的 JSP scriptlet, response.setcontenttype 语句 12 JSP/servlet/Struts/JSF training: http://www.coreservlets.com 条件性地生成 Excel 电子表格 ( 代码 ) <BODY> <CENTER> <H2>Comparing Apples and Oranges</H2> <% String format = request.getparameter("format"); if ((format!= null) && (format.equals("excel"))) { response.setcontenttype("application/vnd.ms-excel"); } <TABLE BORDER=1> <TR><TH></TH> <TH>Apples<TH>Oranges <TR><TH>First Quarter <TD>2307 <TD>4706 <TR><TH>Second Quarter<TD>2982 <TD>5104 <TR><TH>Third Quarter <TD>3011 <TD>5220 <TR><TH>Fourth Quarter<TD>3055 <TD>5287 </TABLE> </CENTER></BODY></HTML> 13 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

条件性地生成 Excel 电子表格 ( 结果 ) 14 JSP/servlet/Struts/JSF training: http://www.coreservlets.com session 属性 <%@ page session="true" <%-- Default -- <%@ page session="false" 指定页面不是会话的一部分 默认地, 它是属于会话 如果网站的流量较大, 可以节省服务器端的内存 要想真正起到作用, 所有的相关网页都必须这样做 15 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

iselignored 属性 <%@ page iselignored="false" <%@ page iselignored="true" 控制是否应该忽略 JSP 2.0 表达式语言 (EL)(true), 还是应该正常求值 (false) 如果您的 web.xml 指定 servlets 2.3( 对应 JSP 1.2) 或更早的版本, 默认值为 true 但改变默认值依旧是合法的 在 JSP-2.0- 兼容的服务器上, 不管 web.xml 的版本如何, 都可以使用这个属性 如果您的 web.xml 指定 servlets 2.4( 对应 JSP 2.0) 或更新的版本, 默认值为 false 16 JSP/servlet/Struts/JSF training: http://www.coreservlets.com buffer 属性 <%@ page buffer="sizekb" <%@ page buffer="none" 指定 out 变量所使用的缓冲区的大小 通过缓冲, 我们甚至能够在某些页面内容已经生成后再去设置 HTTP 报头 ( 只要缓冲区没有被充满或被显式地清空 ) 服务器可以使用比请求的大小更大的缓冲区, 但不会小于所请求的大小 默认值和系统相关, 但至少 8kb 17 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

errorpage 属性 <%@ page errorpage="relative URL" 指定一个 JSP 页面, 抛出的任何异常如果未在当前页面内被捕获, 则由该页面进行处理 指定的错误处理页面可以通过 exception 变量来访问所抛出的异常 web.xml 文件允许我们指定适用于整个应用的错误页面, 当任何确定的异常或确定的 HTTP 状态代码产生时, 都会使用该页面来处理 errorpage 属性仅用于指定特定页面的错误页面 18 JSP/servlet/Struts/JSF training: http://www.coreservlets.com iserrorpage 属性 <%@ page iserrorpage="true" <%@ page iserrorpage="false" <%-- Default -- 标示当前页面是否可以作为其他 JSP 页面的错误页面 名为 exception 的新预定义变量会被创建, 并能够在错误页面中对其进行访问 只能将其作为紧急备份 ; 明确地处理尽可能多的各种异常 不要忘记一定要检查查询数据中的值是否缺失或异常 19 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

错误页面 : 示例 <BODY> <%@ page errorpage="/web-inf/speederrors.jsp" <TABLE BORDER=5 ALIGN="CENTER"> <TR><TH CLASS="TITLE">Computing Speed</TABLE> <%! private double todouble(string value) { return(double.parsedouble(value)); } <% double furlongs = todouble(request.getparameter("furlongs")); double fortnights = todouble(request.getparameter("fortnights")); double speed = furlongs/fortnights; <UL> <LI>Distance: <%= furlongs furlongs. <LI>Time: <%= fortnights fortnights. <LI>Speed: <%= speed furlongs per fortnight. </UL> </BODY></HTML> 20 JSP/servlet/Struts/JSF training: http://www.coreservlets.com 错误页面 : 示例 ( 续 ) <BODY> <%@ page iserrorpage="true" <TABLE BORDER=5 ALIGN="CENTER"> <TR><TH CLASS="TITLE"> Error Computing Speed</TABLE> <P> ComputeSpeed.jsp reported the following error: <I><%= exception </I>. This problem occurred in the following place: <PRE> <%@ page import="java.io.*" <% exception.printstacktrace(new PrintWriter(out)); </PRE> </BODY></HTML> 21 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

错误页面 : 结果 22 JSP/servlet/Struts/JSF training: http://www.coreservlets.com isthreadsafe 属性 <%@ page isthreadsafe="true" <%-- Default -- <%@ page isthreadsafe="false" 用来告诉系统什么时候您的代码不是线程安全的, 从而, 系统能够阻止并发的访问 一般用以告诉 servlet 实现 SingleThreadModel 要尽可能避免这种用法 某些情况下会带来性能上的损失 另一些情况可能会得到不正确的结果 23 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

非线程安全代码的例子 (ID 必须惟一 ) 下面的代码有什么问题呢? <%! private int idnum = 0; <% String userid = "userid" + idnum; out.println("your ID is " + userid + "."); idnum = idnum + 1; 24 JSP/servlet/Struts/JSF training: http://www.coreservlets.com 此处需要 isthreadsafe 吗? 不需要! <%! private int idnum = 0; <% synchronized(this) { String userid = "userid" + idnum; out.println("your ID is " + userid + "."); idnum = idnum + 1; } 在高业务量环境中可以获得较好的性能 如果服务器使用实例共享的方案, 则 isthreadsafe="false" 会完全失败 25 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

extends 属性 <%@ page extends="package.class" 指定由 JSP 页面转换而成的 servlet 的父类 使用时要极端小心 可能阻止系统使用高性能的定制超类 (superclasses) 典型的目的是让用户扩展由服务器供应商提供的类 ( 举例来说, 为支持个性化的特性而提供的类 ), 而不是扩展您自己的类 26 JSP/servlet/Struts/JSF training: http://www.coreservlets.com 小结 import 属性 改变由 JSP 页面生成的 servlet 导入的类 实用工具类一定要使用包! contenttype 属性 指定结果的 MIME 类型 不能根据条件来使用 要想条件性地设置 MIME 类型, 请使用 <% response.setcontenttype(...); errorpage 和 iserrorpage 属性 指定 紧急情况 错误处理页面 isthreadsafe 属性 关闭并行访问 请使用显式的同步, 而非这个属性 27 JSP/servlet/Struts/JSF training: http://www.coreservlets.com

2004 Marty Hall 问题? JSP, Servlet, & Struts Training Courses: http://courses.coreservlets.com Available in US, China, Taiwan, HK, and Worldwide 28 JSP and Servlet Books from Sun Press: http://www.coreservlets.com Available in English, Chinese (simplified and traditional script), and 12 other languages