jstl是jsp标准标签库,丰富页面标签,降低复杂度
两个jar包 jstl-1.2.jar standard-1.1.2.jar
需要写头标签
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
1.c:out
输出username的值,没找到输出unknow
<c:out value="${ param.username}" default="unkonw"></c:out>
2.c:remove
移除指定的jsp范围内的对象
3.c:if 当visit的值为1的时候,才显示if标签体中的语句
<body>
<c:set value="1" var="visit"></c:set>
<c:if test="${visit==1}"> visit的值为1</c:if>
</body>
4.c:choose 当test中的值为真时,才显示标签中的语句,注意""中必须是bool值
<body>
<c:choose>
<c:when test="${empty param.username}"> 未知用户名</c:when>
<c:when test="${param.username=='boss'}"> 欢迎您boss</c:when>
<c:otherwise > 员工您好</c:otherwise>
</c:choose>
</body>
5.c:for
<%@page import="java.util.Map"%>
<%@page import="java.util.HashMap"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
<% int []number= {1,2,3,4};%>
<c:forEach var="name" items="<%=number%>">
${name}
</c:forEach>
<%
Map mymap=new HashMap();
mymap.put("key1", "value1");
mymap.put("key2", "value2");
mymap.put("key3", "value3");
mymap.put("key4", "value4");
%>
<c:forEach var="name" items="<%=mymap %>">
${name.key} ${name.value }
</c:forEach>
</body>
</html>
7.jsp可以直接使用和声明后端的类
<jsp:usebean id="student" class="cnn.student"></jsp:usebean>
注意类中的getter和setter一定要规范
<%@page import="java.util.Map"%>
<%@page import="java.util.HashMap"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
<jsp:useBean id="student1" class="newnew.Student"></jsp:useBean>
<jsp:setProperty property="age" name="student1" value="15"></jsp:setProperty>
<jsp:setProperty property="name" name="student1" value="mike"></jsp:setProperty>
<jsp:getProperty name="student1" property="age"></jsp:getProperty>
<jsp:getProperty name="student1" property="name"></jsp:getProperty>
</body>
</html>
package newnew;
public class Student {
private int age=20;
private String nameString="mike";
public String getname()
{
return this.nameString;
}
public int getage()
{
return this.age;
}
public void setage(int age) {
this.age = age;
}
public void setName(String nameString) {
this.nameString = nameString;
}
}