JSP JSTL 레이블 사용

10061 단어
JSTL 태그 사용
키워드: JSTL 레이블, , , , , , , , , , , , , , >
원래는 본 적이 없어요. 제가 초보라고 했지만 많은 자료에서 JSTL을 중시하지 않는 것 같아요.프로젝트 소스 코드를 보니 이 탭 라이브러리에 사용된 것 같아서 정말 편리하고 페이지가 더욱 시원해 보인다.JAVA 프로그래머가 직접 쓴 코드의 양을 줄였는데 정말 검증되었다. 프로그래머가 게으르지 않으면 프로그래머가 코드를 쓸 때 게으름을 피울 생각을 하지 않는다면 생활은 매우 재미없다.
다음은 총괄적으로 정리하고 학습한다.
JSP Standard Tag Library, JSTL(Standard Tag Library, JSTL)은 일반적인 웹 사이트 기능을 표준화된 형식으로 구현하는 맞춤형 태그입니다.
JSP 기술의 장점 중 하나는 맞춤형 태그 라이브러리 도구입니다.jsp:include와 같은 핵심 JSP 태그를 제외하고 맞춤형 태그 라이브러리 도구는 사이트나 응용 프로그램을 중심으로 하는 동작을 설명하는 유일한 태그를 만들 수 있습니다.사용자 정의 태그 라이브러리 (약칭 taglib) 를 만들면 항목을 확장하거나 다른 항목으로 이동할 때 이 태그를 다시 사용할 수 있습니다.또한taglib를 다른 개발자에게 전달하여 자신의 사이트에서 사용하거나 웹 응용 프로그램의 다른 부분에서 사용할 수 있습니다.
      
JSTL의 목표는 JSP 페이지의 디자인을 간소화하기 위한 것이다.페이지 디자이너에게 스크립트 언어(기본값은 JAVA 언어)를 사용하여 동적 데이터를 조작하는 것은 비교적 어려운 반면에 라벨과 표현식 언어를 사용하는 것은 상대적으로 쉽다. JSTL의 사용은 페이지 디자이너와 프로그램 개발자의 분업 협력에 편리함을 제공했다.
 
1. JSTL 구성
 
JAR 파일 두 개, jstl.jar와standard.jar .무엇이 필요한지 상관할 필요가 없고 응용에 중점을 두어야 한다(1+1?=2, 우리는 깊이 연구할 필요가 없다. 이렇게 쓰는 것만 알면 된다.)
 
텍스트 도입:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
                                                                
2. Core 태그 라이브러리
 
Core 태그 라이브러리는 주로 일반적인 용도의 태그, 조건 태그, 교체 태그와 URL과 관련된 태그를 포함한다.JSP 페이지에서 Core 태그를 사용하고 taglig 명령을 사용하려면 다음과 같이 참조할 태그 라이브러리를 지정합니다.
<%@ taglib rui=”http://java.sun.com/jsp/jstl/core” prefix=”c” %>
 
일반적인 용도의 라벨은 , , ,
1.
표현식을 계산하고 결과를 출력하는 데 사용합니다.JSP의 <%=%> 표현식이나 EL의 $${el-expression}과 유사합니다.
 
2.
범위 변수의 값이나javabean 대상의 속성을 설정합니다.
예를 들어 다음과 같이 하십시오.

이렇게 하면 세션이 설정된 것과 같다.
 
3.
상대 의 역할은 범위 변수를 제거하는 것이다.예를 들어
 
4.
 
끼워 넣은 동작에서 던져진 이상 대상을 포획하고 변수에 이상 정보를 저장합니다.
시작 탭: 과 끝 탭: 사이에 이상한 코드를 던질 수 있습니다.코드에 이상이 생기면, 이상 대상은 var 성명 변수에 저장되며, 이 변수는 항상 페이지 범위가 있습니다.이상이 발생하지 않으면 var이 표시한 범위 변수가 제거됩니다.
var 속성을 지정하지 않으면 이상은 간단하게 포획될 뿐 이상 정보는 저장되지 않습니다.
Eg :
<c:catch var=”exception”>
<%
       int i = 5;
       int j = 0;
       int k=i/j;
%>
</c:catch>
<c:out value=”${exception}” /><br>
<c:out value=”${exception.massage}”/>
      : exception.getMessage()
 
       <c:if><c:choose><c:when><c:otherwise>
1.<c:if>
     java    if     。
 
<c:if test=”${user.visitCount==1}”>
       This is your first visit .
</c:if>
 
   true ,       。      var ,       。
<c:if test=”${param.name==’admin’}” value=”result”/>
<c:out value=”${result}” />
 
2.<c:choose>
<c:choose>   <c:when> 、 <c:otherwise>           ,    java    if else.
<c:choose>      <c:when> 、 <c:otherwise>     。
eg :
<c:choose>
       <c:when test="${row.v_money<10000}">
                  
       </c:when>
       <c:when test="${row.v_money>=10000&&row.v_money<20000}">
                  
       </c:when>
       <c:otherwise>
                  
       </c:otherwise>
</c:choose>
 
    
      <c:forEach>   </c:forEach>
 
//      
<c:forEach items="${finalResult.rows}" var="row">       
<tr class="<%=tdClass[(rank+1)%2]%>">
<td align="center"><span><%=rank%> </span></td>
<td align="center"><span ><c:out value="${row.player_name}"/></span> </td>
<td align="center"><span > ¥ <c:out value="${row.money}"/></span></td>
</tr>
<%rank++;%>     
</c:forEach>
 
         。
<c:forEach var =”i” begin=”100 “ end= “110”>
       ${i}
</c:forEach>
      step= “ 2 ”        2 。

예2:
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Spring MVC</title>
</head>
<body>
<% List list=new ArrayList();
list.add("xiaomig");
list.add("zhangsan");
list.add("henry");
list.add("jim");
request.setAttribute("list", list);
%>

<p>foreach status  </p>
<c:forEach var="item" begin="0" end="0" varStatus="status">
	<p>${status.current}</p><!--       -->
	<p>${status.index+1}</p> <!--         -->
	<p>${status.count}</p> <!--         -->
	<p>${status.first}</p> <!--            -->
	<p>${status.last}</p> <!--             -->
</c:forEach>

<p>      </p>
<c:forEach begin="0" end="10" var="item2" varStatus="status">
	<c:if test="${item2%2==0 || item2==3}">
		<p>${item2}</p>
	</c:if>
</c:forEach>

<c:forEach items="${list}" var="nickname" varStatus="status2" >
	<p>${nickname}  <span>${status2.index}</span></p>
</c:forEach>

<c:forEach items="${list}" var="nickname" varStatus="status2" >
	<c:choose>  
       <c:when test="${nickname=='jim'}">  
              <p>${nickname}     </p>
       </c:when>  
       <c:when test="${nickname=='zhangsan' || nickname=='xiaomig'}">  
             <p>${nickname} is middle</p>
       </c:when>  
       <c:otherwise>  
             <p>${nickname} is last </p>
       </c:otherwise>  
</c:choose>  
</c:forEach>

<p>  </p>
${name}
</body>
</html>

3. 레이블 형식 지정
 
<fmt: formatNumber value =”12.3” pattern=”.000”/>
    12.300.      ”.000”,              3  。   3     0   。
 
       <fmt:formatDate value=”<%=new java.util.Date() %>” type=”date” />
              : 2007-5-27 .
<fmt:formatDate value=”<%=new java.util.Date() %>” type=”time” />
       : 9:25:11
<fmt:formatDate value=”<%=new java.util.Date() %>” type=”both” />
       : 2007-5-27 9:25:11
 
 
추가 지식 포인트:
 
1. Request를 교체합니다.getParameter("test"):



 
2.
 
3.



 
4.
${name}

4.sql 태그(중요하지 않으며 권장하지 않음) 설정 데이터 소스: select playername,money from tb_player order by money DESC LIMIT 10 다음 가능: advCosts [${s.index}] = ${row.adv cost}; 데이터 업데이트 레이블: callprocset_role_salespro(?,?,?,?,?);                                                                                                              SELECT COUNT(*) as total FROM tb_channel WHERE game_id=? AND begin_round > <<<   call proc_set_role_product(?,?,?,?,?,?,?,?);  

좋은 웹페이지 즐겨찾기