JSP复习(一) 基础

本文介绍了JSP技术的基础概念,包括其出现的原因、基本组成、隐式对象的作用及使用方法,并详细解释了page指令、include指令及脚本元素的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先:因为Servlet中编写HTML标签的时候非常繁琐,而且Servlet的文本和HTML标签的更改都必须重新编译,所以出现了对Servlet的补充--jsp。jsp本质是Servlet。

jsp页面包括两种东西:模板数据(html和文本)和句法元素(例如<%).

实质:当容器第一次调用完jsp时,会被转换为一个Servlet文件,其中jsp主题内容会被转换成service方法。

隐式对象:相当于在jsp页面访问Servlet API。

九大隐式对象:

pageContext:它提供我们常见的setAttribute和getAttribute方法,其中属性保存在page,request,session,application范围中(page中的属性只能在同一个jsp页面使用),

setAttribute(String name,Object value, int scope)其中scope为PAGE_SCOPE,,SESSION_SCOPE,APPLICATION_SCOPE,例如:

<%
pageContext.setAttribute("param",param,REQUEST_SCOPE);
%>
<%
request.setAttribute("param",param);
%>
一样,还有就是可以通过方法pageContext.getRequest()获得隐式对象request,其他对象依次类推。

page:一般不用,哈哈,可以偷懒了。

指令:他是句法元素,它是指示jsp转换器怎么转换jsp为servlet的命令。

1.page指令:说明这个jsp页面可以用哪些java类型,out可以有多大的缓冲区等

语法:<%@ page attribute="value" .......%>

常用:

import--指定导入需要的java类型一种或者多种。如import=“java.util.List" import=“java.util.List,java.util.ArrayList" ,需要注意java.lang  javax.servlet  javax.servlet.http

java.servlet.jsp是隐式导入的。

contentType--该页面的隐式对象response的内容类型,默认为text/html。

pageEncodeing--给页面的字符编码,默认为ISO-8859-1。

language--指定该页面脚本的语言,默认为java。

errorPage--指定处理本页面错误的页面,值是另一个jsp。

因为contentType和pageEncodeing必须在页面发送之前设置,所以最好把page指令一律放在页面最开始。

2.include指令

将一个jspf文件内容放入同一目录下的另一个jsp文件里。例如:<%@ include file="**.jspf"%>(注意后缀名为.jspf)。

脚本元素:也是句法元素,其中有三种类型:Scriptlet,声明,表达式。

1.Scriptlet:java代码块儿,例如:<% System.out.print(""); %>。

注意:一个页面的java代码块儿,在前面定义的变量对于后面来说是可见的。

2.表达式:略。

3.声明:在jsp页面声明变量和方法。例如:

<%!

public String getTodaysDate(){

return new java.util.Date();

}

%>(用来返回时间)

<html>

<head><title>showTime</title></head>

<body>

<%=getTodaysDate()%>

</body>

</html>

声明放在任何位置。

3.关闭脚本句法元素。

因为使用EL表达式更方便,所以更少在jsp里面写java代码。关闭方法:略。

动作:另一个句法元素。例如访问java对象,执行某个方法。

1.例如:<jsp:usebean id="today" class="java.util.Date"/>

<%=today%>这就相当new了一个Date对象,赋值给today并打印。

2.set/getProperty.略

3.incluse.略

4.<jsp:forward page="index.jsp"></jsp:foeward>跳转页面。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值