javaWeb三层架构&JSP标准标签&域对象&EL表达式&JSTL

1.三层架构

作用:为了将设计和实现完全分离 
           面向接口编程

描述:表示层   体现在界面
           业务逻辑层  biz
           数据库访问层 体现在dao方法

用法:

 

2.JSP标准标签

常用jsp标签(自带):
1.<jsp:include page="页面"> 包含
2.<jsp:param name="name" value="va"> 传参
3.<jsp:foward page="页面"> 转发 *****

4.<jsp:useBean>相当于实例化类 
5.<jsp:setProperty>给useBean属性设置值
6.<jsp:getProperty>取值

4.userBean用法:

<jsp:useBean id="" beanName=""  type=""  class="" scope="">

     id: 对象名 * 
     class:类  创建对象时,完全限定名(包名+类名)
     type:类型 调用对象时 *  (可以用抽象父类或者接口)
     scope:作用域 (page *  request session  application)

5.setProperty用法:

 <jsp:setProperty  name=""  property=""  value="">

  name:useBean 的id
  property:属性名(要注意必须跟实体类中的属性名保持一致)
  value:属性值
 

3.域对象&EL表达式&JSTL

一、jsp内置对象之域对象:

  -- pageContext:属性的作用范围仅限当前的jsp页面(范围最小)
  
  -- request:属性的作用范围仅限同一个请求(转发有效)
  
  -- session:属性的作用范围仅限于一次会话,浏览器打开直到关闭称为一次会话(在此期间会话不失效)

  -- application:属性的作用范围仅限于当前web应用(范围最大)

=============================================================

二、EL(Expression Language)表达式

  -- 功能:替代jsp页面中的复杂代码

  -- 语法:${EL expression}  
           ${bean.name}

  -- EL中的隐含对象(pageScope、requestScope、sessionScope、applicationScope)
 
  -- EL运算符(算术 关系 Empty运算符【判断集合中值是否为空 返回true或者false】)

属性范围

            EL中的名称

page

pageScope,例如${pageScope.username},表示在page范围内查找username变量,

找不到返回Null

request

requstScope

session

sessionScope

application

applicationScope

代码展示

<h2>二、EL表达式</h2>
	1、${pageScope .aa }<br>
	2、${requestScope .aa}<br>
	3、${sessionScope .aa }<br>
	4、${applicationScope .aa }<br>
	<h3>EL运算符</h3>
	${1+2 }_${5>2 }_${ not empty myls }
	<h3>EL表达式取对象的属性值</h3>
	<!--能够点出来的一定是实体类中的属性名  -->
	${goods.gname }_${goods.gid }_${goods.gprice }

=============================================================
三、JSTL

使用JSTL的步骤:

在JSP页面添加taglib指令:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

使用JSTL标签

  --通用标签:set out remove
  --条件标签:if
  --迭代标签:forEach

代码展示:

<h2>三、JSTL(jsp标准标签库)</h2>
	<h3>通用标签:set out remove</h3>
	<c:set var="sb" value="${665+1 }" scope="session"> </c:set>
	<c:out value="${sb }"></c:out>
	移除前:${sb }<br>
	<c:remove var="sb" />
	移除后:${sb }
	<h3>条件标签:if</h3>
	<c:if test="${sb==666 }">
	噶哈哈
	</c:if>
	
	<h3>迭代标签:forEach</h3>
	<c:forEach begin="1" end="10" var="i" step="2">
	${i }
	</c:forEach>
	<!--遍历集合  -->
	<c:forEach items="${myls }" var="g">
	${g.gname }
	</c:forEach>
	<c:forTokens items="aa bb cc dd" delims="," var="i">
	${i }
	</c:forTokens>
	

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值