JavaWeb之jstl&自定义标签&设计模式

106 篇文章 1 订阅

1 回顾

1.1 JSP

 jsp 就是servlet
 脚本元素
表达式:<%=%> out.print();
片段:<% … %> xxx() { … }
声明: <%! %>
 注释 <%-- --%>
 指令
<%@page %>
<%@include file=“”%> 静态包含
 JSP内置对象:9个
page、config、application、 request、response、session、out、exception、pageContext
 pageContext jsp上下文(管理者)
获取其他8个内置对象引用:getXxx()
属性快速操作:
默认 setAttribute(name,value)、getAttribute(name)
移除所有removeAttribute(name)
指定 xxxAttribute(name,value,scope)
依次获取:findAttribute(name)
 4个作用域:page、request、session、application
 动作标签:jsp:include 动态包含

1.2 EL

 简化JSP数据获得。
 EL 取代 脚本元素。<%= %>
 内置对象:11个
pageContext、pageScope、requestScope、sessionScope、applicationScope
${pageScope.user} --> ${user}
param/paramValues 、header/headerValues、cookie、initParam
${cookie.名称.value}

2 EL

2.1 基本语法

 ${username} ${user.username} -->
${pageContext.request.contextPath} pageContext.getRequest().getContextPath()
 el 获得自定义数据必须存放在 域中
 <%= %>

2.2 EL函数

 EL函数,规范提供用于处理EL输出内容工具。–el输出字符串
 在jsp页面中引用函数库(编写好的)
<%@taglib uri=“http://java.sun.com/jsp/jstl/functions” prefix=“fn” %>
固定值 fn 建议(可以任意)

 自定义el函数
1 确定实现类(自定义,方法必须是static)
2 编写配置文件(描述文件),通知tomcat实现类位置
tld文件标签描述文件
3 jsp 使用自己函数库

3 JSTL

 JavaServer Pages Standard Tag Library jsp标准标签库,jsp规范一部分。sun定义规范及接口。
 使用格式:<前缀:标签名 属性=值 />
 apache 对 规范进行实现。理论需要导入jar包。但myeclipse内置,发布tomcat时,自动添加jstl.jar包

如果用到eclipse需要手动导入jar包。

 JSTL标签库

4 自定义标签

 如果是你,my:if 该如何
 标签 my:if --> <% if() {} %>
 开发步骤
1.编写实现类
2.编写配置文件,确定使用时那个实现类
3.在jsp中引用配置文件,使用标签
 实现类
要求:实现接口 SimpleTag,继承类 SimpleTagSupport

传统标签:实现接口Tag,继承类TagSupport,功能更强大,但实现繁琐。
简单标签:接口SimpleTag,继承SimpleTagSupport ,在jsp2.0之后提供
提供标记接口父类:JspTag

 配置文件
tld文件 tld是taglib description 的缩写 , 标签类库的描述文件,是jsp解析程序可以通过配置文件获得相应的实现类
tld文件基于xml文件,扩展名为tld,内容xml
tld位置:
1.WEB-INF目录,及子目录,但 classes、lib目录除外
2.WEB-INF/lib/*.jar/META-INF/目录下,jar文件内
 简单标签生命周期:
1. 创建标签实例
2. 设置PageContext,执行setJspContext()
3. 每一个属性setter方法,执行 setPattern()
4. 如果有标签体,执行setJspBody()
5. 执行doTag()
 执行标签体
this.getJspBody().invoke(null) ; 输出到浏览器。
 在doTag()方法体中,throw SkipPageException() 异常 可以阻止当前标签之后内容的输出。

5 JSP模式

 提供开发模式:按照固定套路进行编程。
 两种模式:模式1和模式2
模式1:JSP、JavaBean
JSP:收集数据,显示数据、业务逻辑控制<% %>
JavaBean : 封装数据,数据处理
特点:适用于小项目,开发速度快,维护成品高,可扩展性差。

模式2:JSP、JavaBean、Servlet
	JSP:收集数据(提交表单),显示数据
	Servlet :获得数据,业务逻辑控制,选择jsp显示数据
	JavaBean : 封装数据,数据处理

 MVC :一种软件设计模式,B/S架构都支持。例如:java、.net、php等
思想:业务逻辑处理 与 数据显示 相分离。
Model:模型,用于封装数据
View:视图,用于显示数据
Controller:控制器,用于控制正常执行。
模式2就是 MVC在java具体应用。

6 经典三层系统架构

 三层系统架构:认为的将服务器端的程序划分三层,用于不同的目的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

paterWang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值