JSP快速复习篇

2023-10-08 10:45:10 浏览数 (1)

JSP复习快速复习提纲

第一章 JSP简介

1.JSP的定义
代码语言:javascript复制
JSP全称是“Java Server Page”,是服务器界面,是一种动态网页开发技术,通过使用JSP标签在HTML中插入Java代码,JSP在进行编写执行后,把生成的页面反映给客户端。
2.Tomcat各个服务器安装目录各文件夹含义
代码语言:javascript复制
(1)bin目录:该目录主要用于存放tomcat的命令
(2)config目录:用于存放tomcat的一些配置文件。
		server.xml:可以设置端口号、设置域名或者Ip
		web.xml:可设置支持的文件类型
		context.xml:可设置配置数据源之类的信息
		tomcat-users.xml:用来配置管理tomcat用户与权限
(3)lib目录:该目录主要用来存放tomcat运行需要加载的jar包
(4)logs目录:用来存放tomcat在运行过程中产生的日志信息
(5)temp目录:用来存放tomcat在运行过程中产生的临时文件
(6)webapps目录:主要用来存放应用程序,当tomcat启动时会去加载webapps目录下的应用程序。
(7)work目录:用来存放tomcat在运行后编译的文件,例如JSP编译后的文件。

第二章 JSP语法

1.JSP语法包含的五种元素
代码语言:javascript复制
(1)普通的Html页面
(2)JSP标记
(3)变量和声明方法
(4)JAVA程序片
(5)JAVA表达式
2.了解JSP页面运行原理(了解)
代码语言:javascript复制
jsp工作原理︰所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。当第一次运行一个JSP页面时,JSP引擎要完成将JSP文件翻译成Servlet文件,Servlet文件是Java应用程序;JSP引擎调用Java编译器,编译Servlet文件得到可执行的代码文件(.class文件)。
JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器;服务器将运行结果以HTML形式作为响应返回给客户端的浏览器。由于一个JSP页面在第一次被访问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。
3.如何声明变量、定义类、定义方法
  • 声明变量
代码语言:javascript复制
<%!
int x,y=100,z;
String tom=null,jery="Love JSP";
Date date;
%>
  • 定义类
代码语言:javascript复制
<%!
public class Circle
{
double r;
Circle(double r)
{
this.r = r;
}
double 求面积()
{
return Math.PI*r*r;
}
}
%>
  • 定义方法
代码语言:javascript复制
<%!
int num = 0; //声明一个计数变量
synchronized void add()
{
//该方法实现访问次数的累加操作
num  ;
}
%>
4.插入Java程序片和表达式
代码语言:javascript复制
程序片
java片段(scriptlet):  <% java代码; %>
表达式
用于输出表达式的值到浏览器,<%=表达式  %>  在表达式中不能加分号(;)
5.JSP当中的全局变量和局部变量
代码语言:javascript复制
<%!
      int x = 10;  //全局变量
%>
<%
      int y = 10; //局部变量
      out.println("<h2>x&nbsp;=&nbsp;"   x     "</h2>");
      out.println("<h2>y&nbsp;=&nbsp;"   y     "</h2>");
%>

总结:
<%!  %>包裹的为全局变量
<%   %>包裹的为局部变量
6.JSP注释
代码语言:javascript复制
<%-- 注释信息 --%>
以上注释在客户端中通过源代码看不到注释中的内容,安全性高
7.JSP指令

JSP指令的一般格式:

代码语言:javascript复制
<%@指令 属性名="值"%>

指令类型

  • page指令
  • include指令
Page指令
代码语言:javascript复制
page指令用来定义整个jsp页面的一些属性和这些属性的值,属性值用单引号或者双引号括起来

语法格式:

代码语言:javascript复制
<%@ page 属性1= “值1” 属性2=“值2” …%>

page指令属性

指令名称

指令简介

language

language="java"生命JSP程序文件所使用的语言,默认java

import

用来指定JSP页面中需要导入的包,多包导入需要逗号隔开

info

info="text"用来设置JSP页面中的文本信息,可通过getServletInfo()方法获取

pageEncoding

更改字符串级

contentType

表明发送到客户端的程序文件的类型和字符编码

注意:

JSP页面中使用page指令只能为contentType指定一个值,不允许两次使用Page指令传递给contentType属性。

代码语言:javascript复制
<%--错误示范--%>
<%@ page language="java" contentType="application/msword" %>
<%@ page language="java" contentType="text/html" charset="gb2312" %>
include指令

基本语法格式

代码语言:javascript复制
<%@ include file="url" %>

例如:

代码语言:javascript复制
<%@ include file="example2.jsp" %>

嵌入文件,相当于把这个页面插入到另一个页面当中。

JSP动作标记语法

语法格式

代码语言:javascript复制
<jsp: include page="URL"/>
代码语言:javascript复制
<jsp: include page="URL">
		param
</jsp: include>

**当JSP页面运行时才将文件加载进来**

注意

代码语言:javascript复制
<%@ include %>指令和<jsp: include/>动作的区别
(1)<%@ include %>静态包含,是在编译阶段就把次级页面  代码包含进来 ,即不能于当前页面的代码有冲突。优点:执行速度嘎嘎快
(2)<jsp: include/>是在JSP页面执行时才处理文件,是将次级页面  输出进来  。独立于当前JSP页面,动态包含。缺点:执行慢了点喔。

第三章 JSP内置对象

Request对象
代码语言:javascript复制
request对象作用
内置对象request封装了用户请求页面时所提交的信息,该对象调用相应的方法可以获取封装的信息。

request对象常用方法

方法名

描述

getParameter(String name)

获得客户端传递给服务器的name参数的值,否者返回null

getParameterValues(String name)

以字符串的形式返回指定参数的所有值

getProtocol()

获取请求的通信协议,如Http/1.1

getServletPath()

获取请求的JSP页面所在的目录呀~

getContentLength()

获取HTTP请求的长度

getMethod()

获取表单提交信息的方式,post或者get

getHeader(String s)

获取请求头中的值

getHeaderNames()

获取头名字的一个枚举

getHeaders(String s)

获取头的全部值

getRemoteAddr()

获取客户机IP地址

getRemoteHost()

获取客户机的名称

getServerName()

获取服务器的名称

getServerPort()

获取服务器的端口号

getParameterNames()

获取提交信息体中部分name参数的一个枚举

setAttribute(String name,Java.lang.Object obj)

设置名字为name的request参数值,值为obj

getAttribute(String name)

获取request对象name参数的值

常见的HTML标记

标记

描述

<h1>~<h6>

用于定义标题,从一级标题到六级标题。

<p>

用于定义段落。

<a>

链接标记,用于定义链接和超链接。

<img>

图像标记,用于插入图片

<ul><ol><li>

列表标记,用于创建无序列表和有序列表。

<table><tr><td>

表格标记,用于创建表格

<strong><em><u><s>

文本样式标记,用于为文本添加粗体、斜体、下划线、删除线等样式。

Response对象
代码语言:javascript复制
response对象作用
response对象用于对用户的请求做出响应。

response对象常用方法

方法名

描述

setContentType(String s)

改变返回MIME类型,按照新的响应类型返回

sendRedirect(URL url)

重定向,将用户重新引导到一个页面(输错登录信息,引导重新回到登录页)

setHeader(“key”,“value”)

设置新的HTTP头,例如response.setHeader(“refresh”,“5”);每五秒刷新一次

Session对象
代码语言:javascript复制
session对象用来在客户首次访问服务器时,将为该客服创建一个session对象,用来记录连接的信息。

session对象常用方法

方法名

描述

setAttribute(key,obj)

session对象调用该方法将参数key指定对象存进session当中

getAttibute(String key)

获取session对象当中关键字是key的对象。

getAttributeNames()

session对象调用该方法产生一个枚举对象,该枚举对象使用nextElements()遍历session中各对象所对应的关键字

getCreationTime()

session对象调用该方法可以获取该对象创建的时间

removeAttribute(String key)

session对象调用该方法移除关键字key对应的对象

session对象的生存期限(生命周期)

换个说法,啥时候session会gameover!!!

代码语言:javascript复制
session对象失效的方式
(1)关闭浏览器(把浏览器叉出去,不配运行)
(2)session对象调用invalidate()    (自杀,不陪你玩了,自己去亖)
(3)设置发呆时间,setMaxInactiveInterval(int interval) 单位毫秒 (活到55岁就可以退休了~~~)
Application对象
代码语言:javascript复制
application对象是访问同一个web目录下所有用户共享的
对于一个Web容器,所有用户都共享一个application对象,服务器启动后,就会自动创建一个application对象,这个对象就会一直保存,直到服务器嘎了。

application对象常用方法

方法名

描述

setAttribute(key,obj)

application对象调用该方法将参数key指定对象存进session当中,如有重复,替换

getAttibute(String key)

获取application对象当中关键字是key的对象。

getAttributeNames()

对象调用该方法产生一个枚举对象,该枚举对象使用nextElements()遍历application中各对象所对应的关键字

removeAttribute(String key)

该方法移除关键字key对应的对象

getServletInfo()

application对象调用该方法获得servlet编译器的当前版本信息

生命周期

代码语言:javascript复制
生于服务器开始,崩于服务器嘎~
session对象和Application区别
代码语言:javascript复制
(1)两者的作用范围不同:session是用户级别的,application是web应用程序级别的,是一个全局作用域
(2)每一个用户都有一个自己的session,而所有用户可以共享通一个application,相当于全局变量。

第四章 JavaBean

JavaBean概念
代码语言:javascript复制
JavaBean是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象。
特点:
(1)代码复用(2)易编写易维护(3)一次编译多次运行

一颗

0 人点赞