03013_动态页面技术-JSP
1、jsp的出现

2、jsp脚本和注释
(1)jsp脚本
①<%java代码%> ----- 内部的java代码翻译到service方法的内部;
②<%=java变量或表达式> ----- 会被翻译成service方法内部out.print() ;
③<%!java代码%> ---- 会被翻译成servlet的成员的内容。
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<!-- ① -->
<%
int i = 0;
System.out.println(i);
%> <!-- ② -->
<%=i%> <!-- ③ -->
<%!String str = "hello!";%>
<%=str%>
</body>
</html>
(2)jsp注释:不同的注释可见范围是不同
①Html注释:<!--注释内容--> ----可见范围 jsp源码、翻译后的servlet、页面显示html源码;
②java注释://单行注释 /*多行注释*/ ---可见范围 jsp源码、翻译后的servlet ;
③jsp注释:<%--注释内容--%> ---可见范围 jsp源码可见 。
3、jsp运行原理-----jsp本质就是servlet
(1)jsp在第一次被访问时会被Web容器翻译成servlet,再执行;
(2)过程:第一次访问---->helloServlet.jsp---->helloServlet_jsp.java---->编译运行;
(3)被翻译后的servlet在Tomcat的work目录中可以找到。
4、jsp的指令是指导jsp翻译和运行的命令,jsp包括三大指令:
(1)page指令 --- 属性最多的指令(实际开发中page指令默认);
①属性最多的一个指令,根据不同的属性,指导整个页面特性;
②格式:<%@ page 属性名1= "属性值1" 属性名2= "属性值2" ...%> ;
③常用属性如下:
language:jsp脚本中可以嵌入的语言种类 ;
pageEncoding:当前jsp文件的本身编码---内部可以包含contentType ;
contentType:response.setContentType(text/html;charset=UTF-8) ;
session:是否jsp在翻译时自动创建session ;
import:导入java的包 ;
errorPage:当当前页面出错后跳转到哪个页面 ;
isErrorPage:当前页面是一个处理错误的页面 。
(2)include指令
①页面包含(静态包含)指令,可以将一个jsp页面包含到另一个jsp页面中;
②格式:<%@ include file="被包含的文件地址"%> 。
(3)taglib指令
①在jsp页面中引入标签库(jstl标签库、struts2标签库);
②格式:<%@ taglib uri="标签库地址" prefix="前缀"%> 。
4、jsp九大内置/隐式对象(9个)
(1)jsp被翻译成servlet之后,service方法中有9个对象定义并初始化完毕,我们在jsp脚本中可以直接使用这9个对象;

(2)out对象
①out的类型:JspWriter ;
②out作用就是想客户端输出内容----out.write() ;
③out缓冲区默认8kb,可以设置成0,代表关闭out缓冲区,内容直接写到respons缓冲器。
(3)pageContext对象
jsp页面的上下文对象,作用如下:

5、jsp标签(动作)
(1)页面包含(动态包含):<jsp:include page="被包含的页面"/>;
(2)请求转发:<jsp:forward page="要转发的资源" /> ;
(3)静态包含与动态包含的区别?

03013_动态页面技术-JSP的更多相关文章
- 动态页面技术JSP/EL/JSTL
本节内容: jsp脚本和注释 jsp运行原理 jsp指令(3个) jsp内置/隐式对象(9个) jsp标签(动作) EL技术 JSTL技术 JavaEE的开发模式 动态页面技术:就是在html中嵌入j ...
- JavaWeb之动态页面技术JSP/EL/JSTL
一.JSP技术 1.jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%=java变量或表达式> - ...
- 动态页面技术----JSP技术
1995年java诞生,没有jsp,只有Servlet, Servlet开发:Servlet上嵌套html代码,非常繁琐. 1998年,出现jsp,方便写html代码,并且可以在html代码中嵌套ja ...
- JavaEE之动态页面技术(JSP/EL/JSTL)
动态页面技术(JSP/EL/JSTL) JSP技术 jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%= ...
- java ->动态页面技术(JSP)
动态页面技术(JSP/EL/JSTL) JSP技术 jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%= ...
- 动态页面技术之JSP
1.什么是JSP技术 JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导.许多公司参与一起 ...
- 动态页面技术(JSP)
JSP技术 jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%=java变量或表达式> ----- ...
- 动态网页技术---JSP
JSP(全称JavaServer Pages)是由Sun Microsystems公司倡导和许多公司参与共同创建的一种使软件开发者可以响应客户端请求,而动态生成HTML.XML或其他格式文档的Web网 ...
- JSP动态页面技术
1.JSP和html的区别 处理过程的区别 HTML 浏览器发送一个请求到服务器,服务器找到这个页面直接返回. JSP 浏览器发送一个请求道服务器,服务器判断到时.jsp结尾,去调用JSP引擎,JSP ...
随机推荐
- 解决ARCGIS10.2与VS2013不兼容
在注册表中HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0增加类型为REG_SZ的InstallDir节点.Ins ...
- Android rxjava2的disposable
rxjava+retrofit处理网络请求 在使用rxjava+retrofit处理网络请求的时候,一般会采用对观察者进行封装,实现代码复用和拓展.可以参考我的这篇文章:rxjava2+retrofi ...
- shell中的判断语句
1.字符串判断 str1 = str2 当两个串有相同内容.长度时为真 str1 != str2 当串str1和str2不等时为真 -n str1 当串的长度大于0时为真(串非空,变量) -z str ...
- C++ vector类详解
转自http://blog.csdn.net/whz_zb/article/details/6827999 vector简介 vector是STL中最常见的容器,它是一种顺序容器,支持随机访问.vec ...
- 小记:iOS 中一般对于 view 不依赖 model 的的两种代码书写形式
一. 前言 对于在 MVC 的定义中,view 层是不引用 model 层,view 和 model 是不相往来的 一般开发中,我们都写过 在自定义 view 中增加一个 model 的属性,外接直接 ...
- lnmp一键安装 nginx
官网: https://lnmp.org/install.html 1.下载完整版:http://soft.vpser.net/lnmp/lnmp1.5-full.tar.gz文件大小:715MB M ...
- 【BZOJ3460】Jc的宿舍(树上莫队+树状数组)
点此看题面 大致题意: 一棵树,每个节点有一个人,他打水需要\(T_i\)的时间,每次询问两点之间所有人去打水的最小等待时间. 伪·强制在线 这题看似强制在线,但实际上,\(pre\ mod\ 2\) ...
- 配置Python环境变量
虽然是老问题了,现在安装都自动配置环境变量. 这里,我是在VS2017中安装的Python3.6,但是没有自动配置好环境变量. 配置Python环境变量 打开[此电脑]—[属性]—[高级系统设置]—[ ...
- 在ListView控件中实现修改功能
实现效果: 知识运用: ListView控件的LabelEdit属性 //指示用户是否可以编辑控件中数据项的标签 public bool LabelEdit{get;set;} 实现代码: priva ...
- 破解 D-H 协议
756: 破解 D-H 协议 时间限制: 1 Sec 内存限制: 128 MB提交: 78 解决: 18[提交] [状态] [讨论版] [命题人:admin] 题目描述 Diffie-Hellma ...