当前位置: 首页 > article >正文

jsp初学

指令标识

html

java代码

out内置对象,直接拿过来用 

注释

<%-- 注释内容 --%>:JSP提供了隐藏注释,隐藏注释不仅在浏览器页面中看不到,在查看HTML源代码时也看不到

动态注释,网页看不到,只能看源码<!-- <%=new Date()%> -->

指令

page指令,描述属性

session属性的值为true。需要注意的是,JSP 容器自动导入以下4个包:

java.lang.*

javax.servlet.*

javax.servlet.jsp.*

                                                           javax.servlet.http.*

include指令,包含其他jsp页面,

        <%@ include file="被包含的文件地址"%>

taglib指令

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

prefix:用于指定标签的前缀,该前缀不能命名为jspjspxjavasunservletsunw

uri:用于指定标签库文件的存放位置

jsp动作元素

page相对路径,<jsp:include page="URL" flush="true|false" />

page:用于指定被引入文件的相对路径。例如,指定属性值为top.jsp,则表示将当前JSP文件相同文件夹下的top.jsp文件引入到当前JSP页面中。

flush:用于指定是否将当前页面的输出内容刷新到客户端,默认情况下,flush属性的值为false

 页面一包括了页面二,先编译页面二,包含在页面一,在编译页面一

而上面include指令只编译一次

include指令通过file属性指定被包含的文件,file属性不支持任何表达式; <jsp:include>动作元素通过page属性指定被包含的文件支持JSP表达式

如果你希望在被包含的页面内容之前输出当前页面的所有内容,那么你可以使用 flush="true"。如果你希望在被包含的页面内容之后或者某个特定时间点刷新输出缓冲区,那么你可以使用 flush="false"

求转发元素<jsp:forward>

<jsp:forward page="welcome.jsp" />

隐式对象

名称

类型

描述

out

javax.servlet.jspJspWriter

用于页面输出

request

javax.servlet.http.HttpServletRequest

得到用户请求信息

response

javax.servlet.http.HttpServletResponse

服务器向客户端的回应信息

config

javax.servlet.ServletConfig

服务器配置,可以取得初始化参数

session

javax.servlet.http.HttpSession

用来保存用户的信息

application

javax.servlet.ServletContext

所有用户的共享信息

page

java.lang.Object

指当前页面转换后的Servlet类的实例

pageContext

javax.servlet.jsp.PageContext

JSP的页面容器

exception

java.lang.Throwable

表示JSP页面所发生的异常,在错误页中才起作用

out先写到缓存区里面

 getWriter()才是直接返回到页面上

一般是有缓存的,除非设置buffer="0kb",所以一般是 getWriter()输出的先显示

通过pageContext可以获得其他8个隐式对象,和设置属性

pageContext操作属性的相关方

方法名

功能描述

void setAttribute(String name,Object value,int scope)

用于设置pageContext对象的属性

Object getAttribute(String name,int scope)

用于获取pageContext对象的属性

void removeAttribute(String name,int scope)

用于删除指定范围内名称为name的属性

void removeAttribute(String name)

用于删除所有范围内名称为name的属性

Object findAttribute(String name)

用于从4个域对象中查找名称为name的属性

属性:

void setAttribute(String name,Object value,int scope)

scope范围如下

pageContext.PAGE_SCOPE:表示页面范围。

pageContext.REQUEST_SCOPE:表示请求范围。

pageContext.SESSION_SCOPE:表示会话范围。

pageContext.APPLICATION_SCOPE:表示Web应用程序范围。

  • 要注意的是,当调用findAttribute()方法查找名称为name的属性时,会按照pagerequestsessionapplication的顺序依次进行查找,如果找到,则返回属性的名称,否则返回null

为什么第二个不谢request----可能是request对象的方法

exception对象

  • exception对象只有在错误处理页面才可以使用,即page指令中指定了属性<%@ page isErrorPage="true"%>的页面。
  • 处理错误页面的jsp" 要设置<%@isErrorPage="true%>才可以获取错误对象
<%=exception.getMessage()%><br />
  • 错误页面要设置<%@errorPage="error.jsp"%>

http://www.kler.cn/a/104921.html

相关文章:

  • 手部关键点检测5:C++实现手部关键点检测(手部姿势估计)含源码 可实时检测
  • 记一次vue3实现TRSP大华相机拉流的经历
  • 百度Comate SaaS版本正式发布,助力开发者加速研发过程
  • vim程序编辑器
  • javascript IP地址正则表达式
  • 解决vi编辑器方向按键和删除按键无法使用问题
  • Android Studio中配置aliyun maven库
  • 【Docker】Python Flask + Redis 练习
  • 【Android Studio】工程中文件Annotate with Git Blame 不能点击
  • Golang链路追踪:实现高效可靠的分布式系统监控
  • KVM实验之动态迁移
  • 机器学习-学习率:从理论到实战,探索学习率的调整策略
  • 在Ubuntu上通过Docker部署OpenVPN服务器
  • Docker 深度清除镜像缓存 (overlay2)
  • Redis 持久化配置,RDB和AOF方式配置说明
  • IDEA 构建web项目-详细教程
  • 局域网下多台windows电脑时间同步
  • 快速入门Elasticsearch:安装、基本概念、分词器和文档基本操作详解
  • vscode json文件添加注释报错
  • 大语言模型系列