1、JSP的执行过程

首先用户向服务器发出请求,服务器在接收请求后去寻找响应的jsp页面,然后服务器将jsp页面翻译成.java文件,然后进行编译得到.class字节码文件,服务器执行class文件将其转换成

html流响应给客户端,客户端拿到html流进而翻译成页面。至此jsp执行过程完毕

总结:jsp的执行主要为:翻译、编译、执行

2、JSP指令

概念:什么是JSP指令,简单地说JSP指令就是负责告诉JSP引擎如何把jsp页面翻译成servlet,通过设置jsp的属性,控制jsp页面运行时的某些特性。

注意:jsp指令由<%@开始,%结束>,需要注意的是jsp其实本身就是一个servlet,它只是一个规范了html代码的模板,本质上还是一个servlet,jsp主要是用来做页面显示的

三大指令如下:

(1)page: 页面设置 指令,包含import导包,contentType内容的类型,language脚本语言,session、配置errpage错误页面,isErrorPage是否为错误处理页面

(2)include,包含指令,又分为静态包含和动态包含,其作用主要是引用已经写好的htmll页面

(3)taglib,自定义标签库

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" preix="c">

3、JSP中的九大内置对象

(1)pageContext:特殊对象,可以获取其他八大对象,可以使用其他八大对象的方法

(2)page:表示当前页面,可使用其来调用servlet中的方法

(3)request:获取用户的请求信息

(4)response:服务器响应客户端请求

(5)session:用来保存每一个用户的信息,存储在服务器中

(6)application:表示站点信息,作用域为站点,只要服务器不关闭,信息不会失效

(7)config:服务器配置信息,可以获取初始化参数

(8)out:用来进行页面输出,实际上是getWrite()方法

(9)exception:异常信息

4、cookie:用户请求的标识,存储在本地中,其中session依赖cookie

5、转发与重定向的区别

转发:客户端一次请求,服务器两次处理,并且传递的信息不会丢失;转发就是用户在请求服务器的时候,其中一个servlet不能满足其处理请求,于是便调用

另一个servlet进行处理请求,然后将其处理的结果返回给客户端,整体来说客户端只是做了一次请求,而服务器处理了两次。

重定向:客户端请求两次,服务器处理两次。当服务器接收到用户的请求后,若当前的servlet不能满足其请求于是便将用户的请求交给另一个servlet进行处理,于是客户端便请求这个servlet,对应的servlet便进行处理,对用户来说总共请求了两次,而服务器也处理了两次。

6、GET和POST的区别:

(1)地址栏:GET方式会在地址栏中显示请求的参数信息,而POST不会显示

(2)传输数据大小限制:GET的传输数据在2KB左右,而POST则没有限制,理论上只要内存足够大则就可以有多大

(3)传输数据类型:GET只能传输ASCII码,而POST没有限制,并且可以传输二进制

(4)历史记录:GET请求方式的参数将会保存在浏览器的历史记录中,而POST则不会

(5)安全性:GET的安全性较差,POST相比GET较高

(6)缓存:GE能被缓存,而POST不能缓存

7、静态包含于动态包含的区别:

动态包含用的元素是page,拥有两种形式,而静态包含只有一种形式,最主要的区别在于静态包含是先包含再进行编译,而动态包含是先进行编译再进行包含。

8、EL表达式

(1)基本三种语法:

${表达式}    //表达式一般是服务器传输过来的数据,用EL表达式方便将他们进行显示

点操作符  ${对象.属性}    //例如${info.name},很显然info是一个对象,或者为集合对象

[]操作符  ${对象[属性]}    //跟点操作符一种意思

9、JSTL(JSP标准标签库)

是Java官方提供的一种标签库,主要是为了方便在JSP中书写Java代码,从而能够更方便的处理业务

使用过程:

(1)导入jar包:jstl.jar和statndard.jar

(2)添加taglib指令:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" preix="c" >

核心标签库

JSP技术学习总结的更多相关文章

  1. Java Web编程技术学习要点及方向

    学习编程技术要点及方向亮点: 传统学习编程技术落后,应跟著潮流,要对业务聚焦处理.要Jar, 不要War:以小为主,以简为宝,集堆而成.去繁取简 Spring Boot,明日之春(future of ...

  2. Java Web之JSP技术

    JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比htm ...

  3. Jsp技术总结

    这节我们总结一下Jsp的相关技术. 1. 什么是JSP JSP即Java Server Pages,它和servlet技术一样,都是sun公司定义的一种用于开发动态web资源的技术.该技术的最大特点在 ...

  4. Java技术学习路线

    转载 作者:David 链接:https://www.zhihu.com/question/25255189/answer/86898400来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商 ...

  5. (八)JSP 技术知识点总结(来自那些年的笔记)

    目录 什么是 jsp Jsp 调用和运行原理(简略版) Jsp语法 Jsp指令简介 Page指令 Include指令 taglib指令 Jsp乱码问题 jsp运行原理(详细版) JSP中的九大隐式对象 ...

  6. Java研发技术学习路线

    Java研发技术成长路线 作为一名Java研发者,深感Java技术的学习是一个漫长过程,从一名Java菜鸟开始,加之持之以恒的耐心和脚踏实地的精神,不间断理论的学习,不停止技术实践,终成为一名技术佼佼 ...

  7. 学生信息管理系统--基于jsp技术和MySQL的简单增删改查

    web实现增删改查的方式有很多啊,对于初学者来说当然是要先了解各部分的传值的方式.本篇博客从jsp技术的最基础方面进行说明. 一.什么是jsp技术 首先,我们要了解什么是jsp技术. jsp技术是基于 ...

  8. java的JSP技术

    java的JSP技术 [toc] 1.JSP简介 Jsp技术是用来开发java web的页面显示的,所有MVC模型里面的视图层,所以视图层的开发 jsp不是编程语言,三个英文是java server ...

  9. IT软件人员的技术学习内容(写给技术迷茫中的你) - 项目管理系列文章

    前面笔者曾经写过一篇关于IT从业者的职业道路文章(见笔者文:IT从业者的职业道路(从程序员到部门经理) - 项目管理系列文章).然后有读者提建议说写写技术方面的路线,所以就有了本文.本文从初学者到思想 ...

随机推荐

  1. k-means伪代码

    1.初始化k个簇中心. 2.更新所有样本点簇归属:样本点到哪个簇中心点最近就属于哪个簇. 3.重新计算每个簇的中心点(直到簇中心点不再变化或达到更新最大次数) #k-means伪代码 import n ...

  2. NOIP2015普及组总结

    NOIP2015普及组总结 这次考试总体感觉不错,不过觉得时间有点紧,在最后30分钟才打完. 第一题(金币coin):大大的W!爆搜O(N),一分钟打完: 第二题(扫雷游戏mine):同上: 第三题( ...

  3. Pycharm中文显示异常

    pycharm2019,中文显示乱码异常,配置了encoding为utf8还是不行,需要设置备用字体 原因是某些英文字体库不支持非英文字符,无法显示 设置fallback字体 File-setting ...

  4. java-dockerfile

    java环境dockefile FROM centos:7 MAINTAINER yon@taexa.com ENV JAVA_HOME /usr/local/jdk ENV JRE_HOME ${J ...

  5. webpack--第三方loader

    1.配置处理css样式表的第三方loader webpack默认只能打包处理js类型的文件,无法处理非js类型的文件:要想处理*.css文件,需要手动安装一下合适的第三方loader加载器: npm ...

  6. JPA学习(三、JPA_API)

    框架学习之JPA(三) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...

  7. Eating Plan

    Eating Plan 2019南昌G 模数为合数,所以只有约3000个数字不为0 记录一下不为0的数字位置 H[x]代表距离为x的连续段的数字和的最大值 处理出H[x] 再H[x] = max(H[ ...

  8. Linux shell - 找到进程pid,然后杀掉(jps, grep, awk)

    在应用服务器上,启动一个应用程序F3后,一直挂着,如果想要关闭它话,可以使用jps找到它的pid,然后,使用kill命令杀掉这个pid,例如: $> jps 17337 Jps 6660 Mai ...

  9. webpack配置之webpack.config.js文件配置

    webpack配置之webpack.config.js文件配置 webpack.config.js webpack resolve  1.总是手动的输入webpack的输入输出文件路径,是一件非常繁琐 ...

  10. 树链剖分&咕咕咕了好久好久的qtree3

    前言 显然qtree系列都是树链剖分辣 发现自己没有专门整理过树链剖分耶 辣么就把这篇博客魔改成树链剖分好辣(貌似除了树剖也没什么好写的) 正文 废话了辣么多终于开始了 一.树剖怎么写鸭 二.树剖有什 ...