JSP基础点滴
来源:互联网 发布:酒店员工流失率数据 编辑:程序博客网 时间:2024/05/16 00:53
JSP的指令有3种:page、include和taglib。
<%= 5+6 %>转变为java类时,会生成out.println(5+6);"5+6"会当成参数传送到out.println()方法中。"<%="两个字符间不能有空格。
JSP怎样象SERVLET那样取得初始化参数?
在web.xml中
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>mypack.Test</servlet-class>
<jsp-file>/jsps/myTest.jsp</jsp-file>
<init-param>
<param-name>password</param-name>
<param-value>123456</param-value>
</init-param>
</servlet>
增加一个<jsp-file></jsp-file>标记,表明该JSP生成的SERVLET会得到上面的初始化参数。
当容器把一个JSP转变成一个JAVA类时,它会实现HttpJspPage接口,然后再进一步转变成一个SERVLET类。
HttpJspPage接口有jspInit()方法,功能类似SERVLET的init()方法。
JSP表达式语言EL
${class.student}
表达式中第一个变量可以是一个隐式对象,也可以是一个属性。
EL的隐式对象有:pageScope,requestScope,sessionScope,applicationScope,param,
paramValues,header,headerValues,cookie,initParam,pageContext
上述这些隐式对象(除了pageContext)都是映射对象,而pageContext是实际对象的引用。
param可以代替request.getParameter("vv"); == ${param.vv}
paramValues可以代替request.getParameterValues; ==${paramValues.vv}
<%=application.getInitParameter("name")%>==${initParam.name}
若a.jsp是原页面,b.jsp是提交到的页面。
在a.jsp中有<%session.setAttribute("v.v","1234567890")%>
在b.jsp中可以这样取出值来${sessionScope["v.v"]}
"."和"[]"操作符
如果表达式变量后有个".",那么左边的变量必须是一个映射(MAP)或者是个bean。
如果表达式变量后有个"[]",那么左边的变量可以是一个映射(MAP)或者是个bean或则是数组。
A:<%@ include file="header.jsp"%>与B:<jsp:include page="header.jsp" />
A:在编译成SERVLET时将A的内容打印到页面上
B:在运行时动态调用header.jsp。
List al = new ArrayList();
al.add("ease");
al.add("south");
al.add("west");
al.add("north");
<c:forEach var="ore" items="${fx}" step="1" begin="0" end="4" varStatus="taa">
<tr>
<td>${ore}</td>
<td>${taa.count }</td>
</tr>
</c:forEach>
varStatus:计数器,从1开始。
<c:set var="name" scope="request" value="zhi"/>
<c:set target="beanName" property="ids" value="001" />
target:必须是一个bean或者map。
<c:import uri="http://www.baidu.com" />
<c:url value="/t.do" />
<taglib>
<uri>bk.test</uri>
<tag>
<name>start</name>
<tag-class>bk.test.Example</tag-class>
<body-content>empty</body-content>
<attribute>
<name>username</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
JSP:
<%@ taglib prefix="ta" uri="bk.test"%>
<ta:start username="${un}" />
rtexprvalue:true:运行时计算,是动态的。false:转换时计算,是静态的。
<body-content>empty</body-content>可有4种选择
1)empty 标记不能有体
2)scriptless 不能有脚本元素,但可以有EL或JSTL动作
3)tagdependent 标记体是文本的。
4)jsp 可以是JSP中的所有元素。
- JSP基础点滴
- jsp点滴
- JSP点滴
- jsp编程经验点滴
- JSP点滴碎知识
- Jsp学习的点滴
- Java基础点滴
- c#基础点滴
- C基础点滴
- JAVA 基础点滴1
- C#基础点滴_String
- C#基础点滴_enum
- angular js基础点滴
- jsp,html点滴;checbox勾选
- 【java基础点滴02】数组
- jvm基础-OutOfMemoryError零星点滴
- JS基础和JQ点滴
- jsp基础
- 一个“成熟的”的想法
- 动态的调用可变参数函数
- 工作流概念到Petri网的映射(学习笔记)
- 关于C/C++动态内存管理
- 以后在这儿安个家
- JSP基础点滴
- cadence IC5 install under ubuntu 6.06. cadence IC50 安装总结,在ubuntu6.06下.
- C#写“监视器”
- 迭代,进化,敏捷,UP
- 无聊的下午
- 龙芯软件开发(25)-- PCI设备初始化3
- 一直以来很喜欢的NewAge纯音乐
- 我的博客生活
- 三种语言递归效率的比较matlab,python,c,lisp....