JSP基本知识
JSP基本原理:
JSP本质是Servlet(一个特殊的Java类),当用户向指定Servlet发送请求时,Servlet利用输出流动态生成HTML页面。JSP通过在标准的HTML页面中嵌入Java代码,其静态部分无需Java程序控制,只有那些需要从数据库读取或动态生成的页面内容,才使用Java脚本控制。
Tomcat(服务器容器)会根据JSP页面生成对应Servlet的Java文件和class文件。Tomcat对一个JSP只会生成一个Servlet实例。
所以可以得出如下结论:
- JSP文件必须在JSP服务器内运行。
- JSP文件必须生成Servlet才能运行。
- 每个JSP页面的第一个访问者速度很慢,因为必须等待JSP编译成Servlet。
- JSP页面的访问者无须安装任何客户端,JSP页面输送到客户端的是标准的HTML页面。
JSP注释:
格式:<%-- 注释内容 --%>
作用:用户标注在程序开发过程中的开发提示,不会被输出到客户端,即在客户端获取页面源代码不会被看到。
JSP声明:
格式:<%! 声明部分 %>
作用:用于声明变量和方法,在JSP被编译为Servlet实例后,变量和方法就作为实例的成员变量和成员方法。
提示:声明部分可以使用private、public等访问控制修饰符,也可以使用static修饰,但不能用abstrat修饰声明方法,因为抽象方法将倒置JSP对应的Servlet变成抽象类,从而导致无法实例化。
输出JSP表达式:
格式:<%=表达式%>
作用:输出表达式的值。
注:输出表达式语法后不能有分号。
JSP脚本:
格式:<% 脚本部分 %>
作用:包含任何可执行的Java代码。
提示:JSP脚本将转换成Servlet里_jspService方法的可执行代码,意味着在JSP脚本部分也可以声明变量,但不可以声明方法。在JSP脚本部分声明的变量是局部变量,不能使用private、public等访问控制符修饰,也不能使用static修饰。
JSP基本知识的更多相关文章
- Java学习-033-JavaWeb_002 -- 网页标记语言JSP基础知识
JSP 是 Sun 公司提倡的一门网页技术标准.在 HTML 文件中,加入 Java 代码就构成了 JSP 网页,当 Web 服务器访问 JSP 请求的时候,首先执行其中的 Java 程序源码,然后以 ...
- JAVAWeb入门之JSP基础知识
也是到了考试周,很多课都结了,准备去学点新东西.随后就开始自学JAVAWeb. 要学习JAVAWeb,首先需下面的知识: a) HTML/CSS/JS(前端页面),XML,JSON,vue ...
- JSP面试知识
JSP方面 1. JSP四种范围是什么?区别是什么? Page:指单单一页jsp page的范围: Request:的范围只在一jsp页发出请求到另一页之间,随后这个属性失效: Session:范围是 ...
- jsp开发知识
1.在JSP中:Java部分是在服务器端执行的:js部分是在客户端的浏览器执行的:二者完全不相干.因此直接在JSP页面上是无法在js.java和HTML变量之间进行调用的. 2.表单 <form ...
- jsp基础知识(基本的语法及原理)
jsp 语法分为三种不同的类型: (1) 编译器指令: 类如: <%@ page import="java.io.*"%> (2) 脚本语法: 指定的是java代码: ...
- JavaEE系列之(一)JSP基础知识详解
一.JSP基础语法 1.JSP简介 JSP(Java Server Pages),其根本是一个简化的Servlet设计,它实现了在Java中使用HTML标签.JSP是一种动态网页 ...
- jsp 基础知识之指令元素
由于考研和结业的事情,这里荒废了许久,而如今重新捡起来,是因为带到公司的碳素笔没有油了...... jsp的指令元素:通常以<%@开始,以%>结尾. jsp主要包括三种指令元素:pa ...
- java ee,包括js,html,jsp等等知识整合
为了方便修改和后续的包装套路 首先用户访问的页面从web.xml找到 <welcome-file-list> <welcome-file>index.html</we ...
- JSP基础知识➣Cookie和Session(五)
JSP Cookie 处理 Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息.在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持.JSP脚本通过request对象 ...
随机推荐
- EFDC_EE如何设置自适应时间步长
下图是EFDC_EE的运行时间参数的设置界面,在时间步长的设置中,如果“Safety Factor”参数,设置为非0,即可实现自适应时间步长的设置,但要注意如下几点: 1.“Safety Factor ...
- 【Python】django安装
官方下载:https://www.djangoproject.com/download/ 报错 [root@test Django-]# python setup.py install Traceba ...
- C# 最原始的tree 递归使用
; i < dr.Rows.Count; i++) { ) { n ...
- 【MVC】关于Action返回结果类型的事儿(下)
代码
- hadoop 根据SecondaryNameNode恢复Namenode
1.修改conf/core-site.xml 增加 <property> <name>fs.checkpoint.period</name> <value&g ...
- 会"说话"的勒索病毒Cerber
最近有个案子与勒索病毒有关,证物是个台式机,运行Windows 7 64bit操作系统,委托方是某高科技公司,希望能调查出事发的关键时间点.感染来源及途径.恶意程序文件名等相关信息. 在对证物计算机进 ...
- leetcode 107
107. Binary Tree Level Order Traversal II Given a binary tree, return the bottom-up level order trav ...
- 深入浅出Nodejs读书笔记(转)
Node简介 这一章简要介绍了Node,从中可以了解Node的发展历程及其带来的影响和价值. 为什么叫Node?起初,Ryan Dahl称他的项目为web.js,就是一个Web服务器,但是项目的发展超 ...
- 如何更新Linux源
首先需要自己收藏几个可以得到Linux源的站点,比如:http://mirrors.163.com/ (163的镜像站):可以百度搜索[Linux镜像站]: 下面这些镜像站,转自:http://www ...
- php通过正则从字符串中获取所有图片url地址
/** * 提取字符串中图片url地址 * @param type $str * @return type */ function getimgs($str) { $reg = '/((http|ht ...