1、JSP技术:Java服务器页面,运行在Web服务器中的组件。动态网页技术,以.jsp结尾
2、JSP与Servlet的区别:Servlet是在Java代码中输出HTML元素,而JSP是在HTML元素中嵌入JSP代码
3、JSP的运行过程:JSP实质上就是Servlet
客户端--请求某个JSP页面-->Web容器查找该JSP页面对应的Servlet实例是否存在
|-->不存在(第一次):Web容器找到该JSP页面-->转译成Servlet源代码-->编译成.字节码,加载并创建实例
|-->存在(第n次):Web容器直接启动线程,调用对应的Servlet实例的jspServlet方法
4、JSP页面的组成元素:
1)传统
2)EL(表达式语言)
3)自定义标签
4)JSTL(JSP标准标签库)
5、JSP的基本组成元素 转译为Servlet的时候
1)HTML:静态元素。-->放置在service方法中当作out.write()的字符创参数直接向客户端输出
2)表达式(Expression):-->放置在service方法中当作out。print()的参数
<%= java表达式 %> 计算表达式的值,并输出到客户端。表达式不能用“;”结束
3)代码片段(Scriptlet):--> 放置在service方法中当作普通的代码处理。
<% java代码 %> 声明的变量是局部变量。
4)声明(Declaration): 当作Servlet的成员看待。与service方法平级。
<%! 变量或者方法的定义%> 声明的是成员变量和成员方法
5)注释(Comment): 直接被忽略
<%-- --%>客户端不能产看到
6)指令(Directive): 编译时指令
<%@ 指令名 属性名="值"...%>
a) page 再转译成Servlet时对页面指定的一些配置信息
b) include 静态包含。不能向被包含的文件传递参数
c) taglib 导入标签库描述文件<%@ taglib uri="URL" prefix="标签引用的前缀" %>
7)动作(Action):运行的命令
<jsp:动作名 属性值="值">标签体</jsp:动作名>
<jsp:动作名 属性值="值"/>
a)useBean ,setProperty,getProperty
b)include:动态包含
<jsp:include page="URL">
<jsp:param name="参数名" value="值">
</jsp:include>
c)forward:请求分派
<jsp:forward page="URL">
<jsp:param name="参数名" value="值">
</jsp:forward>
d)include指令和include动作的异同
相同点:都是在一个页面中把目标页面的内容包含进来
不同:include指令是在转译时把目标页面的内容添加到当前页面对应的Servlet的service方法。不能传递请求参数
include动作是在执行时才把目标页面的内容包含到当前页面对应的Servlet的service方法,可以传递请求参数。
6、JSP中的九大隐式对象
1) out JspWriter实例,用来向客户端输出字符数据
2)request HttpServletRequest实例 代表客户端的请求对象
3)response HttpServletResponse实例,代表服务器的响应对象
4)pageContext PageContext实例 页面上下文对象
5)session HttpSession实例 代表客户端的会话对象
6)application ServletContext Web应用上下文对象
7)page this,代表当前JSP对应的Servlet实例
8)config ServlerConfig实例,代表JSP配置对象(可以获取初始化参数)
9)exception java.io.Throwable实例,代表异常对象。只能使用<%@ page isErrorPage="true" %>的JSP
7、JSP中的四个属性作用域
名称 对应的隐式对象名 描述
page PageContext 页面作用域
session session 会话作用域
request request 请求作用域
application application Web应用作用域
8、Servlet和JSP之间的通信
1)JSP跳转到Servlet
a)超链接或者提交表单跳转到Servlet:在Servlet中获取请求中的参数数据request.getParameter("参数名");
b)<jsp:forward page="Servlet的映射URL"/>
<%request.getRequestDispatcher("Servlet的映射URL").forward(request,response);%>//请求分派
可以通过请求参数来传递数据到Servlet,也可以通过请求作用域来传递
request.setAttribute("属性名","值");//JSP
Object obj=request.getAttribute("属性名");//Servlet
c)代码片段中使用response.sendRedirect("Servlet的映射URL");//不共享同一个请求
无法通过请求参数来传递数据,也无法通过请求作用域来传递。
2)Servlet跳转到JSP
a)请求分派:可以通过请求参数来传递数据到JSP,也可以通过请求作用域来传递
request.getRequestDispatcher("JSP文件").forward(request,response);
request.setAttribute();//Servlet
request.getAttribute();//JSP
b)重定向: 无法通过请求参数来传递数据,也无法通过请求作用域来传递。
response.sendRedirect("Servlet的映射URL");
分享到:
相关推荐
本篇文章将对JSP的基础知识进行详细讲解,特别是针对"JSP小结(一)"中的代码实例。 **1. JSP的基本结构** JSP文件本质上是一个HTML文件,但其中包含了特殊的JSP指令和脚本元素。JSP文件主要有以下几部分: - **...
【JSP弹出窗口技术详解】 在网页开发中,JSP(JavaServer Pages)作为一种动态网页技术,常常需要与JavaScript结合使用,实现丰富的交互效果,其中弹出窗口功能就是一个常见的需求。本文主要针对JSP中如何利用...
在介绍JSP学习经验的小结分享中,文中首先提出了JSP应用的两种基本组合模式:对于简单的应用,建议采用JSP+BAEN的组合方式;而对于复杂的系统,则应考虑使用JSP+EJB的组合。这种组合方式的建议说明了在不同复杂度的...
【jsp结课大作业】是基于Java服务器页面(JSP)技术完成的一项编程项目,它是一个打字母的小游戏。这个项目旨在让学生掌握JSP的基本概念、语法和应用,以及Java后端开发的一些基础技能。通过这个大作业,学生能够...
### 小结 JSP 页面跳转问题 在Java Web开发中,页面间的跳转是非常常见的需求之一。通过本文档,我们将深入探讨几种常用的JSP页面跳转方式:`response.sendRedirect()`、`response.setHeader()`以及`<jsp:forward>`...
jsp各类知识的总结 可以直接参考 方便使用 不用去百度了
在IT行业中,尤其是在进行Web开发时,JSP(JavaServer Pages)中文乱码问题是一个常见的困扰。这主要是由于字符编码不一致导致的。以下是一些关键的知识点和解决方法: 1. **JSP页面乱码** 当JSP页面中的中文字符...
对 JSP 的 简单总结 ,看到这个就可以 回忆起 你学习的jsp 的经历 ...
1.5 本章小结 第2 章 Enterprise JavaBeans 2.1 EJB 技术简介 2.2 EJB 体系结构(一) 2.3 EJB 体系结构(二) 2.4 如何开发EJB(一) 2.5 如何开发EJB(二) 2.6 本章小结 第3 章 EJB 技术进阶 3.1 实体EJB 的开发技术之一...
jsp小结,温故而知新页面语言: 静态:html 动态:asp,php,jsp 1.jsp运行环境 动态的代码 必须有服务器来解析这些代码 2.服务器tomcat 免费服务器
一.功能需求 ...2.登录:用户登录系统 3.用户个人信息管理: ...(2)查看个人信息:登录后,查看个人信息 (3)修改个人信息:在查看个人信息的基础上,修改个人信息 (管理员): 1.登录:管理员登录 ...
【JSP与Servlet技术实验报告】的实验主要围绕图书馆管理系统展开,该系统涵盖了登录、注册、图书管理和用户信息管理等多个核心功能。以下是系统的详细解析: 1. **系统概述** 图书馆管理系统是一个多用户平台,它...
JSP中文乱码问题是一个常见的开发难题,主要涉及客户端、服务器端以及数据库等多个环节。本文将深入探讨这个问题,并提供相应的解决方案。 首先,我们要理解中文乱码的根源。在Java(包括JSP)中,中文字符可能出现...
jsp通用模块及典型系统开发导航 源码 第1章 JSP基础.1.1 运行环境的安装配置1.2 开发环境的安装配置1.3 JSP基础知识1.4 本章小结第2章 JSP2.0新特性及内建对象解析2.1 JSP2.0的新特性2.2 JSP的内建对象概述...
HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>My JSP 'index.jsp' starting page for Response Object</title></head><body bgcolor="#FFFFF0"><h1>Response Object Demonstration...
在本实验报告中,我们将深入探讨如何使用JSP(JavaServer Pages)技术连接MySQL数据库,构建一个简单的在线留言板系统。这个系统允许用户提交留言并显示已有留言,是学习Web开发和数据库交互的一个基础实践。 首先...
在本实验中,我们主要探讨了JavaServer Pages (JSP) 和Servlet技术在Web开发中的应用,特别是如何通过它们实现数据处理和展示。JSP和Servlet是Java Web开发中的两个重要组件,它们协同工作,提供了动态网页的生成...
JSP与数据库开发的结合是Web应用开发中的常见需求,因此对于想要进行Web开发的程序员而言,掌握JSP数据库开发是必备的技能。 在数据库开发中,SQL语言是与数据库交互的基石,其包括以下四种基本类型: 1. 数据定义...
【标题】:“一个简单的jsp聊天室(ajax技术)” 在这个项目中,我们探索了一个基于JSP和AJAX技术实现的简单聊天室。JSP(JavaServer Pages)是用于创建动态网页的技术,它允许开发者在HTML代码中嵌入Java代码,...