servlet中的三大作用域以及 jsp el jstl

简介: servlet中的三大作用域以及 jsp el jstl

servlet中的三大作用域



request

创建:


请求来的时候


销毁:


响应信息生成的时候


作用域范围:


当前请求


session

创建:


请求不携带jsessionId就会创建session对象


请求携带jsessionId,但未找到对应的session空间


销毁:


服务器非正常关闭


session超时


手动销毁(session.invalidate)


作用域范围:


当前请求


servletContext

创建:


服务器启动时


销毁:


服务器关闭时,或项目从服务器上移除时


作用范围:


当前项目


jsp执行流程:

第一次访问jsp页面时,服务器接收请求,由jspservlet来处理此请求,

1,jspSevlet回去查找对应的jsp文件

2,找到之后,服务器会将jsp文件转换成java文件

3,服务器编译java文件生成class文件.

4,服务器运行class文件,生成动态的内容,并返回给浏览器.

<% 编写java代码   %>  //中的代码将会复制到_jspService方法中
<%! 声明全局变量也可定义方法  %>
<%=  输出  %>

jsp特有内容(三大指令,四大作用域,九大内置对象)

三大指令:page,taglib,include

四大作用域:

pageContext(pageContext)


request(HttpServletRequest)


session(httpSession)


application(servletContext)


九大内置对象

request


response


session


page


pageContext


out


exception


application


config


EL表达式(jsp2.0后内置)

作用就是代替<%= %> 也就是代替输出

格式:${表达式}

常用功能:

获取作用域中的数据

<%  pageContext.setAttribute("pkey","pvalue");
    request.setAttribute("rkey","rvalue");
  request.setAttribute("aa.bb","ralue");
%>
  原始方法获取:
  <%=pageContext.getAttribute("pkey")%>
  <%=request.getAttribute("rkey")%>
  <%=request.getAttribute("aa.bb")%>
  EL获取:
  ${pageScope.pkey};
  ${requestScope.rkey}
  ${requestScope["aa.bb"]}
注意:如果域中没有,原始的方法取出来的是null而EL取出来的是空字符

便携方式获取

<%  pageContext.setAttribute("key","pvalue");
    request.setAttribute("key","rvalue");
  session.setAttribute("keyralue");
  appllication.setAttribute("key","ralue");
  appllication.setAttribute("aa.bb","ralue");
%>
  ${applicationScope["aa.bb"]}//如果参数名称中有特殊字符那么便捷查找方式不好用,只能用域对象取值
  ${key}获取出来的是pvalue
  因为会从四个域中查找数据信息(从小到大)找到即返回
  pageContext<request<session<application

获取复杂的数据

数组:${属性名称[index]}
list:${属性名称[index]}
map:${属性名称.key}
实体对象:${属性名称.key}//本质上调用的是实体类的get方法
目录
相关文章
|
15天前
|
Java 容器
【学习笔记】Jsp与Servlet技术
【学习笔记】Jsp与Servlet技术
47 0
|
2月前
|
SQL Java 数据库
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
该博客文章介绍了在JSP应用中使用Servlet查询SQL Server数据库的表信息,并通过JavaBean封装图书信息,将查询结果展示在Web页面上的方法。
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
|
2月前
|
缓存 安全 Java
Java服务器端技术:Servlet与JSP的集成与扩展
Java服务器端技术:Servlet与JSP的集成与扩展
27 3
|
2月前
|
存储 缓存 前端开发
Servlet与JSP在Java Web应用中的性能调优策略
Servlet与JSP在Java Web应用中的性能调优策略
29 1
|
2月前
|
供应链 前端开发 Java
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)
这篇文章通过一个服装库存管理系统的实例,展示了在Spring Boot项目中使用Ajax、JSON、layui、MVC架构和iframe等技术,涵盖了注册登录、权限管理、用户管理、库存管理等功能,并提供了系统运行环境和技术要求的详细说明。
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)
|
2月前
|
存储 Java 关系型数据库
基于Servlet和JSP的Java Web应用开发指南
基于Servlet和JSP的Java Web应用开发指南
33 0
|
2月前
|
前端开发 安全 Java
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
24 0
|
4月前
|
存储 Java 关系型数据库
基于Servlet和JSP的Java Web应用开发指南
【6月更文挑战第23天】构建Java Web应用,Servlet与JSP携手打造在线图书管理系统,涵盖需求分析、设计、编码到测试。通过实例展示了Servlet如何处理用户登录(如`LoginServlet`),JSP负责页面展示(如`login.jsp`和`bookList.jsp`)。应用基于MySQL数据库,包含用户和图书表。登录失败显示错误信息,成功后展示图书列表。部署到Tomcat服务器测试功能。此基础教程为深入Java Web开发奠定了基础。
89 10
|
4月前
|
缓存 安全 Java
Java服务器端技术:Servlet与JSP的集成与扩展
【6月更文挑战第23天】Java Web开发中,Servlet和JSP是构建动态Web应用的基础。Servlet处理逻辑,JSP专注展示。示例展示了Servlet如何通过`request.setAttribute`传递数据给JSP渲染。JSP自定义标签提升页面功能,如创建`WelcomeTag`显示欢迎消息。Servlet过滤器,如`CacheControlFilter`,用于预处理数据或调整响应头。这些集成和扩展技术增强了应用效率、安全性和可维护性,是Java服务器端开发的关键。
57 7
|
4月前
|
存储 设计模式 搜索推荐
早期javeweb技术 JSP JDBC JSTJ Servlet BooStrap(下)
早期javeweb技术 JSP JDBC JSTJ Servlet BooStrap(下)
30 1