jsp20

제로·2022년 12월 13일
0

JSP

목록 보기
19/30

Expression Language

  1. jsp에서 사용가능한 새로운 스크립트 언어
  2. el의 주요 기능
    1) jsp의 4가지 기본 객체가 제공하는 영역의 속성을 가진 변수로 사용
    2) 집합 객체에 대한 접근 방법 제공
    3) 수치 연산, 관계 연산, 논리 연산자 제고
    4) 자바 클래스의 메서드 호출 기능 제공
    5) 표현 언어만의 기본 객체 제공
  3. 간단한 구문 때문에 표현식 대신 사용
    • el과 jstl로 인해서 script(expression, scriplet)를 사용하지 않을 수도 있다.

el 활용한 VO 객체 처리

  1. el은 VO객체를 property라는 개념으로 접근해서 호출할 수 있다.

  2. 저장시, 호출시
    1) scope에 따른 객체로 저장
    request.setAttribute("p01", new Person());
    2) 가져올 때
    request.getAttribute("p01"); ==> ${p01.name} (el 태그 사용)
    <%=p01. getName()%>

    ${p01.name} : 필드를 호출하는 것이 아니라 getName()에 접근하여
    get삭제 Name() ==> name으로 변경해서 처리

    • VO에서 필드를 name01로 해도 접근 가능할까?
      ==> 가능하다 name을 호출하는 것이 아니라 getName()메서드에 접근하는 것이기 때문
    • getName()메서드를 getName88()로 변경하면 ${p01.name88} 를 통해 접근 할 수 있다
      ** el 은 값이 없어도 nullPointerException이 발생하지 않고 공백으로 처리한다
<%
	request.setAttribute("p01", new Person("홍길동",25,"서울"));

%>
	<h2>이름:${p01.name }</h2>
	<h2>나이:${p01.age }</h2>
	<h2>주소:${p01.loc }</h2>

el을 통한 요청값 처리

  1. param.요청키:단일요청{param.요청키 } : 단일요청{paramValues.요청키[idx] } : 다중 요청 처리
<form>
	이름:<input type="text" name="name"><br>
	물건가격:<input type="text" name="price">
	물건갯수:<input type="text" name="cnt">
	사는곳:
	<input type="checkbox" name="loc" value="서울경기">서울경기
	<input type="checkbox" name="loc" value="기타내륙">기타내륙
	<input type="checkbox" name="loc" value="제주도">제주도
	<input type="submit"  value="등록">
 </form>
 <h2>요청값 처리</h2>
 <h3>이름:${param.name }</h3>
 <h3>이름(입력여부-없을때):${empty param.name }</h3>
 <h3>이름(입력여부-있을때):${not empty param.name }</h3>
 <h3>사는곳1 : ${paramValues.loc[0]}</h3>
 <h3>사는곳2 : ${paramValues.loc[1]}</h3>
 <h3>사는곳3 : ${paramValues.loc[2]}</h3>
 <h3>총계 : ${param.price*param.cnt}</h3>
 <h3>비교연산자 : ${param.price*param.cnt<=3000}</h3>


profile
아자아자 화이팅

0개의 댓글