jsp ---el---jstl小结

jsp/el/jstl
案例1:在页面中展示所有的商品信息,不能使用jsp的脚本
技术分析:jsp/el/jstl


 jsp:
    java 服务器页面
   作用:将内容的生成和信息的展示分离开来
运行在服务器端,本质就是servlet,产生相对应的class和java文件 work

  jsp的脚本:
<%...%>:java代码片段
<%=...%>:输出表达式  相当于out.print();
<%!...%>:声明成员

  JSP的指令:
作用:声明jsp页面的一些属性和动作
格式:<%@ 指令名称 属性="值" 属性="值" %>
指令的分类:
page:主要是声明jsp的一些属性
include:静态包含
taglib:导入标签库
注意:一个页面可以出现多个指令
指令可以写在任意位置,一般放在jsp页面最上面。




page指令:
  重要的3个属性:
contentType:设置响应流的编码,及通知浏览器用什么编码打。
   设置文件的mimetype
pageEncoding:设置页面的编码
import:志入所需要的包
contentType和pageEncoding联系:
若两都出现的时候,各自使用各自的编码
若只出现一者的时候,两个都使用出现的这个编码
若两者都不出现,使用服务器默认的编码iso-8859-1
  了解的属性:
language:当前jsp页面可以嵌套的语言
buffer:设置jsp页面的流的缓冲区大小
autoFlush:是否自动刷新
extends:声明当前jsp的页面继承于哪个类,
必须继承的httpServlet及其子类
session:设置jsp页面是否可以使用session内置对象
isElignored:是否忽略el表达式
erroPage:当前jsp页面如果出现异常的时候要跳转到的jsp页面
isErrorPage:当前jsp页面是否是一个错误的页面
若值为true,可以使用jsp页面一个内置对象 Exception

include指令:
静态包含,就是将其他页面或者servlet的内容包含进来,一般进行
编译运行,生成一个java文件
格式:<%@include file="相对路径或者是内部路径"%>
例如:<%@include file="/jsp/include/i2.jsp" %>

路径:
相对路径:
./或者什么都不写:当前路径
上一级路径   ../
绝对路径:
带协议和主机的绝对路径
不带协议和主机的绝对路径
/项目名/资源
内部路径:
不带协议和主机的绝对路径去掉项目名称
请求转发   静态包含  动态包含
taglib指令:导入标签库
格式:<%@taglib prefix="前缀名" url="名称空间"%>
若导入之后
     <前缀名:标签名>
例如:<c:if test="">输出内容</c:if>



jsp的内置对象:***(9大内置对象)
在jsp页面上可以直接使用的对象
内置对象            类型
 out   JspWriter
request   HttpServletRequest
response          HttpServletResponse
 session   HttpSession

 exception   Throwable


 page             servlet
 config   ServletConfig
 application      ServletContext
 pageContext   PageContext


jsp里的域对象:理解
  application     整个项目
  session   一次会话
  request          一次请求
  pageContext      一个页面
pageContext:
1.域对象
xxxAttribute(..,int scope)
2.操作其他对象
xxxAttribute(..,int scope)
scope取值:
APPLICATION_SCOPE
SESSION_SCOPE
REQUEST_SCOPE
PAGE_SCOPE
3.获取其他的内置对象
getXXX():
getRequest():获取request内置对象


4.便捷查找
findAttribute(String key)
依次从pagecontext,request,session,application四个域中
查找相应的属性 若查找到了返回值并结束该次查找。
若找不到,返回一个null
jsp的动作标签
<jsp:forward>:请求转发 
相当于java中 request.getRequestDispatcher().forward()
<jsp:include>:动态包含
就是将被包含页面或者servlet的运行结果包含到当前页面中。

    el:
jsp的内置表达式语言  从jsp2.0开始
用来替代<%=..%>
作用:
  1.获取域中数据  ***
  2.执行运算     ***
  3.获取常见的web对象
  4.调用java的方法
格式:${el表达式}


获取域中数据
获取简单数据
${pageScope|requestScope|sessionScope|applicationScope.属性名}
${属性名}:依次从pageContext,request,session,application
若查不到,返回""

获取复杂数据
获取数组中的数据
${域中的名称[index]}
获取list中的数据
${域中的名称[index]}
获取map中的数据
${域中的名称.键名}

javabean导航
javabean:java语言编写的一个可重用的组件
狭义上来讲就是我们编写的一个普通java类,例如user
javabean规范:
1.必须是一个公共的具体类 public class
2.提供私有的字段  private String id;
3.提供公共访问字段的方法  get|set|is方法
一旦有公共的方法之后,get|set之后的内容
必须将首字母小写,将这个东西称之为bean属性
4.提供一个无参的构造器
5.一般实现序列化接口  serializable


${javabean名称.bean属性}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值