Servlet组件之 jsp 技术
JSP
简称java服务器页面(java server page),jsp和servlet实现了我们的开发需求。对于jsp技术我们首先需要知道他的组成 HTML+java+jsp内置对象=jsp
jsp的产生
jsp解决了动态页面使用servlet服务器用response向客户端写代码,这样使得java页面写起来特别麻烦,所以产生了jsp。在HTML中嵌套java代码使得servlet的页面更加干净。但是服务器内部会把jsp页面编译成java文件。这个过程交给服务器去完成大大的节约了开发效率。
jsp的运行过程
服务器启动--------加载jsp到服务器中
客户端访问服务jsp页面---服务器会把jsp页面转化为java文件 ,服务器使用java文件通过服务器再写回到浏览器

jsp基本语法
1、JSP模版元素
网页的静态内容。如:html标签和文本。
2、JSP的脚本
2.1、小脚本 <% java代码 %>
2.1、表达式 <%= 2+3 %> 等价于out.print(2+3);
2.3、声明 <%! %> 表示在类中定义全局成员,和静态块。
3、JSP注释
JSP注释:<%-- 被注释的内容 --%> 特点:安全,省流量
网页注释:<!-- 网页注释 --> 特点:不安全,费流量
4、3指令
<%@ page 属性值=属性值 %>
|
属性: 1、 import 和java代码中的import是一样的 <%@ page import="java.util.Date,java.util.List"%> 或者: <%@ page import="java.util.Date"%> <%@ page import="java.util.List"%> JSP会自动导入以下的包: import java.lang.*; import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.jsp.*; 2、 session: 是否会自动创建session对象。默认值是true; 3、 buffer: JSP中有javax.servlet.jsp.JspWriter输出字符流。设置。输出数据的缓存大小,默认是8kb. 4 errorPage: 如果页面中有错误,则跳转到指定的资源。 errorPage="/uri" 如果写“/”则代表当前应用的目录下,绝对路径。 如果不写“/”则代表相对路径。 5、 isErrorPage: 是否创建throwable对象。默认是false; 6、 contextType: 等同于response.setContextType("text/html;charset=utf-8"); 7、 pageEncoding: 告诉JSP引擎要翻译的文件使用的编码。 <%@ page pageEncoding="gbk" %> 8、 isELIgnored: 是否支持EL表达式。 默认是false |
5、6动作
<jsp:include > 动态包含
<jsp:forward> 请求转发
<jsp:param> 设置请求参数
<jsp:useBean> 创建一个对象
<jsp:setProperty> 给指定的对象属性赋值
<jsp:getProperty> 取出指定对象的属性值
6、9内置对象
其中6个内置对象和servlet中的内置对象是一样的
1.request javax.servlet.http.HttpServletRequest
2.response javax.servlet.http.HttpServletResponse
3.session javax.servlet.http.HttpSession 由session="true"开关
4.application javax.servlet.ServletContext
5.exception java.lang.Throwable 由isErrorPage="false"开关
6.page java.lang.Object当前对象this 当前servlet实例
7.config javax.sevlet.ServletConfit
8.out javax.servlet.jsp.JspWriter 字符输出流,相当于 printWriter对象
9.pageContext javax.servlet.jsp.PageContext
7、4个域对象(主要作用使用来存储值得)
ServletContext javax.servlet.SerlvetContext
request---javax.servlet.Http.HttpServletRequest
Session---javax.servlet.http.httpsession
pageContext---javax.servlet.jsp.PageContext
前三个已经在servlet中介绍了
pageContext javax.servlet.jsp.PageContext
- 创建:页面加载时就会创建pageContext对象
- 销毁:界面访问完成就会销毁
- 写入值:pageContext.setAttribute(String name,Object value);
- 读取值:pageContext.getAttrubute(String name);
- 作用范围:当前jsp页面
8:jsp中的EL表达式
el表达式是为了简化java代码,主要体现在获取值得时候。el表达式是的整个jsp页面更加简洁。使得开发者节约开发时间
el表达式获取域对象值:
servletContextScope.name获取ServletContext中名字为name的值
sessionScope.name获取session中名字为name的值
requestScope.name获取session中名字为named的值
特殊获取域对象中的值的方法(findAttribute)
通过pageContext对象来获取(pageContext.findAttribute(name))。
实现方式:通过查找的方式进行找域对象中的存储值
查询顺序:request域---->session域---->servletContext域
el表达式的内置对象(11个)
pageContext javax.servlet.jsp.PageContext pageContext 一样的
pageScope java.util.Map<String,Object> 没有对应的 pageContext范围中存放的数据,页面范围
requestScope java.util.Map<String,Object> 没有对应的 请求范围数据
sessionScope java.util.Map<String,Object> 没有对应的 会话范围数据
applicationScope java.util.Map<String,Object> 没有对应的 应用范围数据
param java.util.Map<String,String> 没有对应的 一个请求参数
paramValues java.util.Map<String,String[]> 没有对应的 重名请求参数
header java.util.Map<String,String> 没有对应的 一个请求消息头
headerValues java.util.Map<String,String[]> 没有对应的 重名请求消息头
initParam java.util.Map<String,String> 没有对应的 web.xml中全局参数
cookie java.util.Map<String,Cookie> 没有对应的 key:cookie对象的name值
el表达式还可以进行运算,和java中的运算相似 ,el表达式主要是为了获取值使用,对于运算我就不做过多的解释了
9:jstl javaServicePage standard tag library java服务器页面标准标签库
主要提供了jsp页面的逻辑处理eg:循环
注意事项:使用时必须进行导包
jstl.jar jstl标签包
standard.jar 国际化包
常使用的jstl标签有:
通用标签: set、 out、 remove
条件标签:if choose
迭带标签:foreach
使用方法 http://www.runoob.com/jsp/jstl-core-out-tag.html;
Servlet组件之 jsp 技术的更多相关文章
- Servlet,jsp,JSP技术 ,JSP编程
一.Servlet 思考 1 浏览器可以直接打开JAVA/class文件吗? 不可以 2浏览器可以打开HTML.JS 文件吗? 可以 3 JAVA程序可以生成HTML文件吗?可以的,用IO流. 4 ...
- Servlet案例7:jsp技术及案例
jsp运行原理: 根据jsp文件创建java文件(servlet),并编译运行 第一次访问时会被翻译成servlet后执行 jsp三个指令: 1.page指令:页面翻译运行的属性的配置(通常使用默认) ...
- 01 Servlet & Jsp 技术概述
Servlet 介绍 servlet 是运行在web服务器或应用服务器上的java程序, 它是一个中间层, 负责连接来自web浏览器或其他http客户端的请求和HTTP服务器上的数据库或应用程序. 为 ...
- Jsp技术总结
这节我们总结一下Jsp的相关技术. 1. 什么是JSP JSP即Java Server Pages,它和servlet技术一样,都是sun公司定义的一种用于开发动态web资源的技术.该技术的最大特点在 ...
- JSP技术的优缺点介绍
什么是JSP?JSP可用一种简单易懂的等式表示为:HTML+Java=JSP. JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑. 网页还能通过 ...
- 一、动态网络编程的概念 二、Tomcat服务器搭建 三、Servlet组件介绍
一.动态网络编程的概念 动态网页:结合了HTML以外的高级程序编程语言和数据库技术生成的页面. 动态网页编程技术: ASP,PHP,JSP HTTP协议:规范浏览器和服务器之间通信的数据格式. 浏览器 ...
- JavaWeb:JSP技术基础
JavaWeb:JSP技术 快速开始 介绍 JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以%> ...
- java的JSP技术
java的JSP技术 [toc] 1.JSP简介 Jsp技术是用来开发java web的页面显示的,所有MVC模型里面的视图层,所以视图层的开发 jsp不是编程语言,三个英文是java server ...
- Java Web之JSP技术
JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比htm ...
随机推荐
- B+树与B-树
前面已经介绍过B-树,接下来,我们主要介绍一下B+树. 1.B+树的概念 B+树是应文件系统所需而生的一种B-树和变形树.一棵m阶B+树和m阶的B-树的差异在于: (1)有n棵子树的结点中含有n个关键 ...
- SQL新增数据取表主键最新值
string strsql = "insert into SB_Survey(title) values ('标题');select @@IDENTITY"; int s = in ...
- 10.24JS日记
1.函数都有返回值,人为return,返回什么就是什么,否则,他的返回值就是undefined 而方法的本质也是函数,所以也有返回值 document.getElementById()返回的是获取的标 ...
- Android Studio 发布 APK
打开发布设置窗口 打开Generate Signed APK...窗口,点击Create new... 打开Create New...窗口,创建一个Key,这个Key的相关信息一定要好好保存,因为以后 ...
- LED
LED 时间限制: 1 Sec 内存限制: 128 MB 题目描述 数字显示器题目描述:最近学校晚上文化广场的人很多哇,原因是晚上大屏幕会放电影.无聊的艾神和x73也决定一起去文化大广场看一场电影, ...
- Hotspot参数分析
-XX:+HeapDumpOnOutOfMemoryError 让虚拟机在出现内存溢出异常时Dump出当前的内存堆转储快照以便事后进行分析 -Xmx与-Xms 虚拟机堆参数 -Xoss 设置本地方法栈 ...
- 超级好看!巧用PS将风光人像打造成唯美的小星球效果!
本篇教大家如何巧用PS将风光人像照片打造成唯美的小星球!教程讲解过程很细致,理论实操简单易懂,最终完成效果灰常的漂亮,喜欢的小伙伴赶快收走学起来吧! 原图: 效果图: PS:1.对齐图像,选中所有图, ...
- Python3字符编码
编码 字符串是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节 ...
- Laravel Relationship Events
Laravel Relationship Events is a package by Viacheslav Ostrovskiy that adds extra model relationship ...
- SSRF-php初探
0x00 前言 1) SSRF的概念很好理解,请自行百度. 2) JAVA/PHP/PYTHON都存在SSRF漏洞(至于其他语言的情况,了解粗浅尚不得知). 3) SSRF的利用方式 ...