JSP02

补充:
1.一个JavaBean的成员属性称为:对象属性
   该类的get,set方法称为:Bean属性
2.JSP中taglib指令
   <%@taglib uri="JSP标签的命名空间",prefix="命名空间的前缀"%> 
   
转发
1.转发和重定向都是用来解决Web组件之间的跳转问题
   Web组件:处理请求的组件,即Servlet和JSP
2.两个Web组件如果有依赖关系,则用转发
    两个Web组件如果没有依赖关系,则用重定向   
3.转发的实现 
    1)绑定数据到request对象
     request.setAttribute("数据的key即绑定名",要绑定的数据);
     读取绑定值:request.getAttribute("绑定名");
    2)获得转发器
     RequestDispatcher rd=request.getRequestDispatcher("要转发的地址")
    3)转发
       rd.forward(req,res);
       通常2,3步合在一起写
4.转发的特征:
    1)转发过程是一个请求
    2)浏览器地址不变
    3)两个组件共用一个request,所以它们可以通过request共享数据
    4)不能转发到外部资源,只可局限在内部类
5.重定向特征:
    1)重定向过程是2个请求
    2)浏览器地址会发生改变
    3)两个组件分别使用两个request,所以不能通过request共享数据
    4)可以重定向到外部资源
6.使用时机
    1)一般查询时会使用转发
    2)一般增加,修改,删除后重定向到查询


EL表达式,JSTL标签
1.EL表达式是一套简单的计算规则,用于给JSP标签的属性赋值,也可直接用来输出,
    其也可脱离标签单独使用
2.EL表达式作用:(取数据、输出数据)
   1)访问Bean的属性(获取get,set方法)
       *方式一:${对象名.属性名}
       *方式二:${对象名["属性名"]}
       *取值范围:默认情况下,EL依次从4个对象中取值,
          page/request(*)/session(*)/application 这4个对象称为EL的取值范围
       *可以明确指定取值范围:page/request/session/applicationScope.对象名.属性名
   2)EL在取值时可以进行运算:  算数运算/逻辑运算/关系运算/判空运算
   3)EL可以直接获取请求参数:  ${param,参数名}/${paramValues.参数名}
4.JSTL是JSP的一套标准标签库(处理数据)
    *JSTL标签本质上就是Java
    *它在首次访问JSP并翻译成Servlet时生效
    *最终它将被翻译成一句Java代码,即XXXTag.doTag()
5.JSTL核心标签
   1)<c:if test="EL表达式">执行内容</c:if>
   2)<c:choose>
    <c:when test="EL表达式">执行内容</c:when>
<c:otherwise>执行内容</c:otherwise>
     </c:choose>    
   3)<c:forEach items="EL表达式" var="循环结果对象名" ></c:forEach>
      varStatus用来声明循环状态,forEach在做循环时,会自动创建一个状态对象,来记录循环相关的状态数据,如循环次数
varStatus就是用来给这个对象命名的,以便于引用它
6.自定义JSTL标签
    1)编写Java类,继承SimpleTagsupport类
    2)在创建的Java类中重写doTag方法
    3)创建标签说明文件(xxx.tld),并在<tag></tag>标签中配置
        *<description></description>描述自定义的标签
        *<name>自定义标签名</name>
        *<tag-class>创建的Java类的路径(包名.类名)</tag-class>
        *<body-content>empty/JSP</body-content> 用来声明双标签的内容类型 
        *<required>false</required> 设置该属性是否必须传入值
        *<rtexprvalue>true</rtexprvalue> 设置该属性是否可以用EL表达式传值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值