JSP学习笔记(一):JSP基础

一、原理

1、HttpServlet 是先由源代码编译为class 文件,然后部署到服务器下。先编译后部署。

2、JSP 是先部署源代码后编译为class文件的,先部署后编译。JSP 会在客户端第一次请求JSP 文件时被编译为HttpJspPage 类。该类会被服务器临时存放在服务器的工作目录中。

3、实例:客户端第一次请求 myFirst.jsp 时,Tomcat 先将myFirst.jsp 转化为标准的 Java 源代码 myFirst_jsp.java
,存放在 %Tomcat_Path%\work\Cataline\localhost\ %Java_Web% 目录下,并将 myFirst_jsp.java 编译为类文件 myFirst_jsp.class 。该 class 文件便是对应的 Servlet 。编译完毕后再运行class 文件来响应客户端请求。以后客户端访问 myFirst.jsp
时,服务器将不再重新编译 JSP 文件,而是兆字节调用 myFirst_jsp.class 文件。

二、语法

(一)脚本

1、<% %>:java代码块

2、<%=%>:输出

3、<%! %>:方法与全局变量

(二)指令(可以被JSP行为标签替代<jsp:directive>)

1、Page指令:指定该JSP页面的属性。

1)实例:

         <%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %>
                <%@ page import="java.util.Date"%>

2)常见属性:

2、include指令

1)实例:include.jsp 中包含 head.jsp 。

 <%@include file="../common/jsp/head.jsp"%>

2)本质:

先包含,后编译。在被编译的 jsp 中已经包含被 include 的文件内容。即是把 head.jsp的源代码添加到了 include.jsp
中,然后编译成一个 class 文件,属于先包含后编译。

3、taglib指令:

1)实例:

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

(三)Jsp行为

1、include行为:<jsp:include>

1)实例:include.jsp 中包含 head.jsp 。

<jsp:include page="/head.jsp" flush="true" ></jsp:include >

2)本质:

先运行后包含。运行时单独执行 head.jsp,然后把执行的结果包含到 include.jsp中,属于先运行后包含行为。在被编译的 include.jsp
中没有被包含的 head.jsp 文件的内容。

2、JavaBean行为:

1)定义 javaBean 对象:<jsp:useBean id="" class="" scope=""/>

2)获取 javaBean 属性:<jsp:getProperty name="" prperty="" />

3)设置 javaBean 属性:<jsp:setProperty name="" prperty="" value="" />

其中 name 为JavaBean 的名称,也就是useBean 行为的id 属性,property 为JavaBean属性,value 为属性值。

3、转发行为:<jsp:forward>

1)实例:

            <jsp:forward page="/somapage.jsp">
                    <jsp:param name="param1" value="value1">
                    <jsp:param name="param2" value="value2">
            </jsp:forward>

4、指令行为:<jsp:directive>相当于JSP指令。

1)实例:

<jsp:directive.page />   行为相当于 <%@ page%>指令。

<jsp:directive.include />行为相当于 <%@ include%>指令。

<jsp:directive.taglib />  行为相当于 <%@ taglib %>指令。

时间: 2024-10-18 09:36:37

JSP学习笔记(一):JSP基础的相关文章

Servlet&JSP学习笔记

Servlet&JSP学习笔记 */--> Servlet&JSP学习笔记 Table of Contents 1 Web容器 2 内置对象 2.1 内置对象分类 2.1.1 out 2.1.2 request 2.1.3 application 2.1.4 response 2.1.5 session 2.1.6 其他 3 JavaBean 3.1 JSP动作元素 3.2 javabean的四个作用於范围 4 JSP状态管理 4.1 Cookie 4.2 include 指令与动作

Servlet&amp;Jsp学习笔记归纳图(一)

转载请注明出处!!!版权必究!! 以下是Servlet&Jsp的学笔记归纳图,详细内容以及相关代码会在后面整理完成 后给出 使用的是思维导图工具:MindManager 6 最新版本是2013,有兴趣的自己百度下载,功能更多,安装有点麻烦 以下提供版本6绿色版免安装版下载: http://pan.baidu.com/s/1jGqlnXc 本节思维导图文件下载:http://pan.baidu.com/s/1eQGbMSU Servlet&Jsp学习笔记归纳图(一),布布扣,bubuko.c

加壳学习笔记(二)-汇编基础

7.简单的汇编语法:   堆栈平衡  PUSH,POP功能: 把操作数压入或取出堆栈语法: PUSH 操作数 POP 操作数格式: PUSH r PUSH M PUSH data POP r POP mPUSHF,POPF,PUSHA,POPA功能: 堆栈指令群格式: PUSHF POPF PUSHA POPAADD,ADC功能: 加法指令语法: ADD OP1,OP2 ADC OP1,OP2格式: ADD r1,r2 ADD r,m ADD m,r ADD r,data影响标志: C,P,A,

卷积神经网络(CNN)学习笔记1:基础入门

卷积神经网络(CNN)学习笔记1:基础入门 Posted on 2016-03-01   |   In Machine Learning  |   9 Comments  |   14935  Views 概述 卷积神经网络(Convolutional Neural Network, CNN)是深度学习技术中极具代表的网络结构之一,在图像处理领域取得了很大的成功,在国际标准的ImageNet数据集上,许多成功的模型都是基于CNN的.CNN相较于传统的图像处理算法的优点之一在于,避免了对图像复杂的

APUE 学习笔记(一) Unix基础知识

1. Unix 体系结构 内核的接口被称为系统调用 公用函数库构建在系统调用接口之上 应用软件既可以调用公用函数库,也可以直接进行系统调用 2. 文件和目录 目录操作函数:opendir---> readdir---> closedir struct dirent 结构体 stat 系统调用 3.程序.进程.线程 程序:存放在磁盘上.并处于某个目录中的一个可执行文件.使用exec系列函数将程序从磁盘读入存储器,并使其执行 进程:程序的执行实体.进程控制的3个函数:fork.exec.waitp

Day3: Python学习笔记之计算机基础——网络片

Day3: Python学习笔记之计算机基础--网络片 什么是互联网协议以及为何要有互联网协议? ?互联网协议本质上是为了方便连接两台计算机而指定的一系列统一的标准. osi五层模型 计算机之间要实现数据传输必须要经过以下五层协议: ? 模型 ,协议 ,硬件 ? 应用层, http协议.用户自定义协议 ? 传输层, TCP/UPD协议 ,四层交换机.四层路由器 ? 网络层, IP协议, 三层交换机.路由器 ? 数据链路层, 以太网.电信号分组, 网桥.以太网交换机.网卡 ? 物理层, 传递电信号

[Spring MVC]学习笔记--基础Servlet

Servlet是一个用Java编写的应用程序,在服务器上运行,处理请求的信息并将其发送到客户端. Servlet的客户端提出请求并获得该请求的响应. 对于所有的客户端请求,只需要创建Servlet的实例一次(这是和CGI(Common Gateway Interface)的重要区别,CGI是每个请求创建一个新实例),因此节省了大量的内存. Servlet在初始化后即驻留内存中,因此每次作出请求时无需加载. 下面通过一个例子来介绍如何编写一个简单的Servlet. 准备工作: 1. 下载并启动To

[A8 学习笔记] A8 汇编基础

A8 处理器工作模式 这点和以往的 arm7 arm11 是一致的.有8个工作模式: 用户模式是通常的ARM程序的执行状态,并用于执行大多数应用程序 快速中断(FIQ)模式是用于处理快速中断 中断(IRQ)模式是用于通用的中断处理 管理模式是一个操作系统保护模式 中断模式是当数据出错或者预取指令出错时进入的模式 系统模式是操作系统的一个特权用户模式 未定义的模式进入一个未定义指令异常发生时 监控方式为安全扩展安全模式安全监控代码. 除了用户模式模式统称为特权模式.特权模式用于服务中断或异常,或访

Linux程序设计学习笔记----多线程编程基础概念与基本操作

转载请注明出处,http://blog.csdn.net/suool/article/details/38542543,谢谢. 基本概念 线程和进程的对比 用户空间资源对比 每个进程在创建的时候都申请了新的内存空间以存储代码段\数据段\BSS段\堆\栈空间,并且这些的空间的初始化值是父进程空间的,父子进程在创建后不能互访资源. 而每个新创建的线程则仅仅申请了自己的栈,空间,与同进程的其他线程共享该进程的其他数据空间包括代码段\数据段\BSS段\堆以及打开的库,mmap映射的文件与共享的空间,使得