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对象 ...
随机推荐
- Unity Js与C#脚本通信
将.js文件放到Standard Assets目录下,否则无法编译通过 CS_test.cs : using UnityEngine; using System.Collections; publ ...
- CentOS6.5下挂载NTFS格式的文件系统
下载对应CentOS版本的rpmforge,下载地址:http://pkgs.repoforge.org/rpmforge-release/ 安装rpmforge,输入命令:# rpm -ivh rp ...
- Windows 7/8/8.1 硬盘安装法实现 ubuntu 14.04 双系统
一.软件准备 1. 下载 Ubuntu 系统镜像:http://www.ubuntu.com/download/desktop/ : 这里使用的是 ubuntu 14.04.1 LTS 64bit 版 ...
- HTML 表单总结http://images2015.cnblogs.com/blog/1001203/201607/1001203-20160730200559841-2144892373.png
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- js设计模式(12)---职责链模式
0.前言 老实讲,看设计模式真得很痛苦,一则阅读过的代码太少:二则从来或者从没意识到使用过这些东西.所以我采用了看书(<js设计模式>)和阅读博客(大叔.alloyteam.聂微东)相结合 ...
- Knockout.Js官网学习(监控属性Observables)
前言 1.创建一个ViewModel <script type="text/javascript"> //1.创建一个ViewModel var myViewModel ...
- 大数据实践:ODI 和 Twitter (一)
本文利用twitter做为数据源,介绍使用Oracle大数据平台及Oralce Data Integrator工具,完成从twitter抽取数据,在hadoop平台上处理数据,并最终加载到oracle ...
- js对象与this指向
创建对象的方法 1.对象字面量法 var obj={} var obj={ 'first-name':'Tom', 'last-name':'bush', age:24, Family:{ Broth ...
- Thinkphp 获取当前url
$_GET['_URL_'] 获取整个url,返回值是数组 $Think.MODULE_NAME 获取当前class的名称 $Think.ACTION_NAME 获取当前action的方法名称
- Service(一)----->简单计算
xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:t ...