一、JSP页面的基本结构

在传统的HTML页面文件里增加Java程序片和JSP标签就构成了一个JSP页面文件。

一个JSP页面可由5种元素组合而成;

1、普通的HTML标记符

2、Jsp标签。如指令标签,动作标签

3、变量和方法的声明

4、Java程序片

5、Java表达式

我们称后三部分为JSP的脚本部分

当server上的一个JSP页面被第一个请求运行时。server上的JSP引擎首先将JSP页面文件转译成一个Java文件,再将这个Java文件编译成生成字节码文件。然后通过运行字节码文件响应客户的请求。这个 字节码文件的任务就是:

1、把JSP页面中普通的HTML标记符号交给客户的浏览器运行显示。

2、JSP标签、数据和方法声明、Java程序片由server负责运行。将须要显示的结果发送给客户的浏览器。

3、Java表达式由server负责计算,并将结果转化为字符串,然后交给客户的浏览器负责显示

二、变量和方法的声明

在 “<%!”和”%>”标记符号之间声明变量和方法。在之间放置Java的变量声明语句。

变量的类型能够是Java语言同意的不论什么数据类型。

我们将这些变量称为JSP页面的成员变量。

在其之间声明的变量在整个JSP页面内都有效,由于JSP引擎将JSP页面转译成Java文件时,将这些变量作为类的成员变量。这些变量的内存空间直到server关闭才被释放。当多个客户请求一个JSP页面时,JSP引擎为每一个客户启动一个线程,这些线程由JSP页面成员变量操作的结果,都会影响到其它用户。

example

<%@ page contentType="text/html;charset=GB2312"%>
<HTML>
<BODY BGCOLOR=cyan>
<FONT Size=4>
<%!
int i=0;
%>
<%
i++;
%>
<p>您是第
<%=i%>
个訪问本站的客户。
<p> </FONT>
</BODY>
</HTML>

执行结果

JSP页面的基本结构 及声明变量的更多相关文章

  1. JSP页面的基本结构

    一:一个JSP页面由以下基本元素组成. (1)HTML标签 (2)CSS (3)变量和方法 (4)Java代码段 (5)JSP动作和指令 (6)其他脚本元素(如Javascript) 二:JSP的基本 ...

  2. JSP页面元素

    jsp-->Java Server Page jsp 页面元素: 静态内容 2.  指令 <%@ page contentType=”text/html” %>  设置指定页面内容类 ...

  3. 网站开发进阶(六)JSP两种声明变量的区别

    JSP两种声明变量的区别 在JSP中用两种声明变量的方法,一种是在<%! %>内,一种是在<% %>内.他们之间有什么区别呢?我们直接看一个JSP文件来理解. 代码如下: &l ...

  4. Jsp页面中动态的引入另一个jsp,jsp:include路径是变量的实现

    1 问题描述 在页面搭建时,会有这样的需求,希望局部页面动态的引用另一个jsp.这里的"动态"的意思引用的jsp的路径是个变量.举个例子,我们希望局部页面可能是page1.jsp或 ...

  5. JSP两种声明变量的区别

    感谢大佬:https://blog.csdn.net/tiercel2008/article/details/11553899?utm_source=distribute.pc_relevant.no ...

  6. 使用type="redirect"重定向,传递List等变量到jsp页面的问题

    Struts2在提交表单的时候,使用「type="redirect"」重定向到相应的jsp页面. Action中的List表单是无法传到相应的jsp页面. 我猜测是因为List作为 ...

  7. 在JSP页面中调用另一个JSP页面中的变量

    在jsp学习中,经常需要在一个jsp页面中调用另一个jsp页面中的变量,下面就这几天的学习,总结一下. jsp页面之间的变量调用有多种方法: 1.通过jsp的内置对象—request对象获取参数: ( ...

  8. 提交一个变量或数组到另一个jsp页面

        注意一:提交一个变量到另一个jsp页面,用hidden的input 另一个页面用request.getParameter();获取 注意二:提交一个数组到另一个页面,可以用相同的input的n ...

  9. JSP中声明变量、方法

    在JSP页面中声明局部变量,全局变量,方法等 代码示例: <%@ page language="java" contentType="text/html; char ...

随机推荐

  1. Oracle基础 05 联机日志 redolog

    --两个相关视图v$logv$logfile alter system switch logfile;  --强制日志切换alter system checkpoint;      --强制检查点 - ...

  2. linux下C的GBD调试学习笔记(转载)

    1. 单步执行和跟踪函数调用 看下面的程序: 例 10.1. 函数调试实例 #include <stdio.h> int add_range(int low, int high) { in ...

  3. 对象存储 - Swift 原理 及 Swift+keystone+dashboard 架构搭建

    1. 原理介绍 Swift 架构.原理及功能: http://www.cnblogs.com/sammyliu/p/4955241.html 总结的很详细也很全面,受益匪浅,感谢分享. 2. keys ...

  4. k8s的Health Check(健康检查)

    强大的自愈能力是 Kubernetes 这类容器编排引擎的一个重要特性.自愈的默认实现方式是自动重启发生故障的容器.除此之外,用户还可以利用 Liveness 和 Readiness 探测机制设置更精 ...

  5. Django admin 界面无法加载 CSS 问题解决方案(服务器 Apache 服务器)

    主要原因: 未找到存放静态文件的目录 没有访问目录的权限 基础知识: 在 CentOS 下面,Django 的静态文件存放在目录: /usr/lib/python2./site-packages/dj ...

  6. (二)centos7安装zabbix agentd端

    关闭防火墙和selinux systemctl stop firewalld systemctl disable firewalld sed -ri '/^SELINUX=/cSELINUX=disa ...

  7. 通俗了解TCP/IP三次握手四次挥手

    前言: tcp/ip通信机制是计算机中很重要的一个知识点,不是一句两句就能解释清楚的,需要反复推敲其中的玄妙. 通俗理解: 但是为什么一定要进行三次握手来保证连接是双工的呢,一次不行么?两次不行么?我 ...

  8. django + dropzone.js 上传文件

    1.dropzone.js http://www.dropzonejs.com/ dropzone.js是一个可预览\可定制化的文件拖拽上传,实现AJAX异步上传文件的工具 2.dropzone.js ...

  9. python——入门系列(一)索引与切片

    1.索引和切片:python当中数组的索引和其他语言一样,从0~n-1,使用索引的方法也是中括号,但是python中的切片的使用简化了代码 索引:取出数组s中第3个元素:x=s[2] 切片:用极少的代 ...

  10. 洛谷——P2117 小Z的矩阵

    P2117 小Z的矩阵 题目描述 小Z最近迷上了矩阵,他定义了一个对于一种特殊矩阵的特征函数G.对于N*N的矩阵A,A的所有元素均为0或1,则G(A)等于所有A[i][j]*A[j][i]的和对2取余 ...