JSP标准标签(动作)

src/com下有UserBean.java,DBUtil.java,UserDao.java
UserBean.java如下:

package com;

public class UserBean {
private String username;
private String password;
private String right;
public String getRight() {
return right;
}
public void setRight(String right) {
this.right = right;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}


<%@ page language="java" import="java.util.*"
pageEncoding="utf-8"%>
<%@ page import="com.*"%>
<%@ taglib uri= "http://java.sun.com/jstl/core_rt" prefix= "c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'test1.jsp' starting page</title>
</head>
<jsp:useBean id="user" class = "com.UserBean" ></jsp:useBean>
<%
String str = "helloWorld";
pageContext.setAttribute("str",str);

%>
<body>

<h1>jsp标准标签</h1>
jsp页面中可以使用的,封装了在jsp开发中大量常用功能如显示,设置,流程控制等的一系列特殊标签。<br>
标准标签包含很多种类。统称为jstl:jsp标准标签库<br>
要使用jsp标签库需在建立项目时选择使用jstl<br>
<h2>最常用的核心标签(先像导入包一样先倒入标签描述文件)</h2>
<h3>1.c:out 将计算的结果输出到页面 </h3>
<c:out value = "${value}" >null value</c:out>
<br>

<h3>2.c:set</h3>
a.设置某个作用范围内的属性<br>
<c:set var="pageValue" value="<%=new Date()%>" scope = "page" > </c:set>
${pageValue}
<br>
b.设置javaBean的属性<br>
<jsp:useBean id="u" class="com.UserBean" scope="page" ></jsp:useBean>
<c:set target="${u}" property="username" value = "jack" ></c:set>
${u.username}
<br>
<h3>3.c:remove移除属性</h3>
<c:remove var ="pageValue" scope = "page" />
${empty pageValue}
<br>
<h3>4.c:catch捕获异常(会将异常绑定上page范围中)</h3>
<c:catch var="ex">
<%
int n = 0,m=1;
int o = m/n;
%>
</c:catch>
${ex}
</body>
</html>



<%@ page language="java" import="java.util.*"
pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix= "c"%>
<%@page import="com.*"%>
<%
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'test2.jsp' starting page</title>
</head>

<body>
<h2>条件标签</h2>
<h3>1.c:if 简单条件判断</h3>
<c:if test="${1>2}">
输出为真
</c:if>

<h3>2.c:choose c:when c:otherwise 替代if...else swith...case..default</h3>
<c:choose>
<c:when test="${empty sessionScope.user}" >
请登录。。。。
</c:when>
<c:otherwise>
已经登录。。。。。
</c:otherwise>
</c:choose>

<br>
<% int age = 20; %>
<c:choose>
<c:when test="<%=age<=40%>" >
青年
</c:when>
<c:when test="<%=age>40&&age<=60%>">
中年
</c:when>
<c:otherwise>
老年
</c:otherwise>
</c:choose>

<% char c = 'a'; %>
<c:choose>
<c:when test="<%=c=='a'%>" >
元音
</c:when>
<c:when test="<%=c=='e'%>">
元音
</c:when>
<c:otherwise>
辅音
</c:otherwise>
</c:choose>
</body>
</html>



<%@ page language="java" import="java.util.*"
pageEncoding="utf-8"%>
<%@ page import = "com.*,java.util.*" %>
<%@ taglib uri = "http://java.sun.com/jstl/core_rt" prefix = "c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'test3.jsp' starting page</title>
</head>
<%
UserDao ud = new UserDao();
List users= ud.getAllUser();
pageContext.setAttribute("users",users);
%>

<%

int i = 0;
int arr []={1,2,3,4,5,6,7,8,9,0};
pageContext.setAttribute("arr",arr);

ArrayList al = new ArrayList();
al.add(new Date());
al.add(new Exception("exception"));
pageContext.setAttribute("al",al);



String str = "123*abc*123";
System.out.println("StringTokenizer......");
java.util.StringTokenizer st = new StringTokenizer(str,"*");
while(st.hasMoreTokens()){
System.out.println(st.nextToken());
}
System.out.println("split......");
String strs[] =str.split("\\*");
for(int g = 0;g<strs.length;g++){
System.out.println(strs[g]);
}
%>

<body>

<h2>迭代标签</h2>
<h3>c:forEach</h3>
1.循环

<c:forEach begin ="0" end = "9" step="2" >
<%=i++%>
</c:forEach>
<br>
2.遍历数组
<c:forEach var="m" items="${arr}" step="2" >
${m}
</c:forEach>
<br>

3.遍历集合
<c:forEach var="o" items ="<%=al%>" >
${o}
</c:forEach>
<br>
<h3>注:items:集合或数组对象,var:给每个元素取的名字,而且每个对象获得时会自动绑定上page,所以尽量用el表达式访问</h3>
4.应用
<table>
<thead><tr><td>username</td><td>passwrod</td></tr></thead>
<c:forEach var = "user" items = "<%=users%>" >
<tr>
<td>${user.username}</td>
<td>${user.password}</td>
</tr>
</c:forEach>
</table>

<br>

<h3>c:forTokens分割字符串</h3>
<c:forTokens items="127.0.0.1" delims="." var="str" >
${str}
</c:forTokens>



</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值