JSP 와 El 표현 식, JSTL 태그 라 이브 러 리 사용

JSP 명령 은 JSP 엔진 에 이 JSP 페이지 를 어떻게 처리 하 는 지 알려 주 는 것 이지 프로그래머 를 대상 으로 하 는 것 이 아 닙 니 다.
모두 세 가지 지령 이 있다.
   1. page 명령:
       1.1. language="java"  기본 값 은 자바, 자바 만 쓸 수 있 습 니 다.
       1.2.import="package.class"  원본 패키지 도입
       1.3.session="true"   기본 생 성 session, true 는 자동 생 성 을 표시 합 니 다. jsp 와 servlet 는 같은 HttpSession 을 가 져 올 수 있 습 니 다.
       1.4.buffer="8kb"  JSP 출력 내용 은 브 라 우 저가 아 닌 캐 시가 가득 차 야 브 라 우 저 로 출력 됩 니 다. 이 JSP 캐 시 는 기본 크기 가 8kb 입 니 다.
       1.5.errorPage="url"   이 페이지 가 잘못 되 었 을 때 어느 페이지 로 넘 어 갈 지 표시 합 니 다.
        isErrorPage="true"   오류 메시지 페이지 를 true 로 표시 해 야 합 니 다. 그러면 JSP 에서 exception 대상 을 만 들 수 있 습 니 다.
               위의 두 속성 은 모두 부분 이상 처 리 를 처리 합 니 다.
         전역 이상:
         웹. xml 파일 설정
    
        

               500

               /WEB-INF/sys500.jsp

        

         유형 이상 처리 도 가능 합 니 다.
     
       

              java.lang.ArithmeticException

              /WEB-INF/sys500.jsp

        

         유형 이상 우선 순위 가 높 습 니 다.국부 이상 우선 순위 가 가장 높다.
          contentType="UTF-8".내부: JSP 에 저 장 된 인 코딩 을 표시 합 니 다.대외: 브 라 우 저 를 어떤 방식 으로 디 코딩 하 는 지 표시 합 니 다.
          pageEncoding="UTF=8";contentType 과 같은 역할 을 합 니 다.
          두 속성 이 동시에 존재 할 때, 안에 pageEncoding 이 결 정 됩 니 다.
          isELIgored="false"
           EL 표현 식 을 무시 할 지 여부 입 니 다. 기본적으로 EL 표현 식 을 지원 합 니 다.
   2. include 명령:
         
                      servlet 로 번역 하 는 것 은 포 함 된 jsp 페이지 의 내용 을 servlet 로 번역 하 는 것 입 니 다. 즉, 여러 jsp 는 하나의 Servlet 로 만 번역 합 니 다. 우 리 는 보통...     
              include 명령 에 포 함 된 jsp 페이지 를 정적 포함 이 라 고 합 니 다. 컴 파일 할 때 포 함 됩 니 다.
 
  3. taglib 명령 어:
 
    

       도 메 인 대상 에 데 이 터 를 연결 할 수 있 습 니 다.
     
                         "신뢰 할 수 있 는"문자열 을 request 필드 에 연결 합 니 다. 이름 은 name 입 니 다.
        
                        이름 이 name 인 데 이 터 를 EL 표현 식 으로 호출 합 니 다. 찾 을 수 없 으 면 빈 문자열 을 되 돌려 줍 니 다.
        request.getAttribute("NAME");   이 방법 은 데 이 터 를 찾 지 못 하면 null 로 되 돌아 갑 니 다.
JSP 9 대 암시 적 대상:
     JSP             Servlet
    1.request                   HttpServletRequest
    2.response                HttpServletResponse    
    3.session                   HttpSession
    4.application             ServletContext
    5.config                     ServletConfig
    6.out                         JspWriter
    7.exception               특수 한 상황 에서 사용 하 다
    8.page                      이 jsp 페이지
    9.pageContext         없다
다음 데모: request/session/application 용법:
  

   
    参数值:
姓名:
年龄:

out 대상 과 Servlet 에서 PrintWriter 의 차이 점:
             1. out 내용 은 jspwriter 캐 시 영역 을 입력 한 다음 printwriter 캐 시 영역 에 진 다음 브 라 우 저 에 지 는 것 입 니 다.             2. pageContext 는 하나의 역할 영역 으로 현재 jsp 페이지 에서 만 유효 하 며 퍼 가기 와 포함 기능 도 완성 할 수 있 습 니 다.
             3. pageContext 도 다른 8 개의 내 장 된 대상 을 얻 을 수 있 습 니 다.
             4. pageContext 는 다른 도 메 인 대상 에 값 을 연결 할 수 있 습 니 다.
             5. pageContext 대상 의 findAttribute 방법 은 page -> request -> session -> application 도 메 인 대상 에서 순서대로 찾 으 면 됩 니 다.
맵 JSP
      웹. xml 파일:


    SimpleJspServlet

    /simple.jsp





    SimpleJspServlet

    index.html


El 표현 식:
         ${}: 도 메 인 대상, request, session, application, pageContext, EL 에서 빈 문자열 을 찾 을 수 없습니다.
    EL 표현 식 중 11 대 내장 대상
           1,pageContext        페이지 context 맵 대상 가 져 오기     
           2,pageScope        페이지 필드 맵 대상 가 져 오기
           3,requestScope        request 필드 의 맵 대상 가 져 오기
           4,sessionScope        세 션 도 메 인 맵 대상 가 져 오기
           5,applicationScope      context 맵 대상 가 져 오기
           6,param                     요청 인자 가 져 오기
           7,paramValues        요청 매개 변수 배열 가 져 오기    
           8, header                  요청 도 메 인 대상 가 져 오기
           9,headerValues
          10,cookies
          11,initParam               웹. xml 의 인자 가 져 오기


        

          

 

 
이 servlet 에서 만 유효 합 니 다.
El 표현 식 에서 도 메 인 에 있 는 데 이 터 를 직접 가 져 올 수 있 습 니 다:
 
               
    姓名:${NAME}

编号:${USER.id}
姓名:${USER.name}
薪水:${USER.sal}

nameList = new ArrayList(); nameList.add("A"); nameList.add("B"); nameList.add("C"); session.setAttribute("NAMELIST",nameList); %> 第二个元素是:${NAMELIST[1]}

map = new LinkedHashMap(); map.put("jack",10000); map.put("marry",12000); map.put("sisi",14000); application.setAttribute("MAP",map); %> SISI的工资是:${MAP['sisi']}

你目前所在的城市是:${STRARRAY[2]}

姓名:${NAMEE}

    
    
EL 표현 식 의 연산 자:



  
    
    10+3=${10+3}
10-3=${10-3}
10*3=${10*3}
10/3=${10/3}
10%3=${10%3}

true && false = ${true && false}
true || false = ${true || false}
! false = ${! false}

10>3=${10>3}
10!=3=${10 ne 3}
10==3=${10 eq 3}

EL 표현 식 의 삼목 연산 자:



  
    
    城市:
                
  




  
    当前web应用的根目录名:${pageContext.request.contextPath}
점치다
姓名:${sessionScope.NAME}
参数值:${param.name}
第三个爱好是:${paramValues.like[2]}
请求头1:${header.host}
请求头2:${headerValues["Accept-Encoding"][0]}
cookie的名:${cookie.PASS.name}
cookie的值:${cookie.PASS.value}

web初始化参数之driver为:${initParam.driver}
web初始化参数之url为:${initParam.url}

JSP - JSTL 태그 라 이브 러 리 --- 함수 fn
    1, 관련 jstl 패키지 가 져 오기
    2. jstl 을 사용 하 는 페이지 에서 taglib 명령 으로 관련 패 키 지 를 도입 해 야 합 니 다.


       fn:toLowerCase("str")       字符串变成小写

       fn:toUpperCase("str")       字符串变成大写

       fn:trim("str")                       去掉字符串两端空白

       fn:split("String","regex")     切割字符串

       fn:join("array","#")              用#把array中每个元素连接

       fn:indexOf("str","s")           返回第二个参数在第一个参数首次出现的位置    

       fn:contains("s1","s2")         返回第二个参数是否包含在第一个参数

       fn:startsWith("s1","s2")      第一个参数是否以第二个参数开头        

       fn:endsWith("s1","s2")       第一个参数是否以第二个参数结尾    

       fn:replace("s1","s2","s3")   把s1中的所有s2用s3替换

       fn:substring("s1",a,b)         把s1中的第a个字符到b-1个字符截取出来

       fn:substringAfter()              ${fn:substringAfter("www@163@com","@")}

       fn:substringBefore()           ${fn:substringBefore("www@163@com","@")}




JSP-JSTL标签库---核心core


    标签 -----把内容输出到浏览器






  
   alert('哈哈');");
    %>
  
 
  
  
     
  



  标签 ---- 把数据绑定到域中






  
    My JSP '02_c_set.jsp' starting page
    
    
        
    
    

  
 
  
      
    
    
    
    
    编号:${pageScope.USER.id}
姓名:${pageScope.USER.name}






标签


          移除pageContext域中的名为NAME的数据




标签


       

          

                 int i = 10/0;

           %>

    

    原因为:${myError.message}






标签

    
        
    



标签


    
    
         
            
         

         
            
         

         
            
         

         
            
         

    
    




标签






  
    
     nameList = new ArrayList();
        nameList.add("小德子");
        nameList.add("小格子");
        nameList.add("小桌子");
        nameList.add("小羊子");
        nameList.add("小凳子");
        pageContext.setAttribute("NAMELIST",nameList);    
    %>        
    
            
索引 编号 姓名 是第一个元素吗 是最后个元素吗
${stat.index} ${stat.count} ${xxx} ${stat.first} ${stat.last}

标签

    
      
          
          
      

            3 도 다운로드 [GET]    


标签

          


标签

               

    




좋은 웹페이지 즐겨찾기