JSP-JSTL ( <C:set>, core 태그 사용하기)
·
JSP
🟰JSTL의 배경 HTML 삽입 미리보기할 수 없는 소스 🟰jstl C(core)태그 ☀️set, remove, if, forEach, redirect 등 사용빈도가 가장 높은 태그 바로 사용방법을 알아보도록 하겠습니다. 🟰 사용하기 ⏬우선 JSTL을 사용하기 위해서 선언부에서 taglib을 지정합니다. ⏬내장 객체별 값 지정해보기 ☀️내장 객체별 하나씩 값을 지정해주었습니다. ☀️c:set은 오른쪽 주석과 같은 기능을 합니다. 해당 객체에 설정한 이름으로 값을 부여합니다. ${pageScope.test1} ${requestScope.test2} ${sessionScope.test3} ${applicationScope.test4 } ​ ⏬결과 화면
JSP EL태그 종류(예시 있음)
·
JSP
🟰EL Tag ☀️ attribute에 접근하여 값을 출력한다 ☀️다운캐스팅 없이 메서드를 호출할 수 있다. ☀️술연산, 비교연산, 논리연산이 가능하다 ☀️empty, not empty 등을 통해 null체크 수행도 가능하다. ☀️대상이 없으면 아무 값도 출력하지 않는다.(null은 출력안함) ☀️\${param.name} 형식으로 파라미터 값을 출력할 수 있다. ☀️내장 객체 pageContext에 접근이 가능하다. ☀️map은 [''], '.'을 이용한 접근이 가능하다(영어한정) , 한글은 ['']만 가능하다. ☀️param은 파라미터를 가져오는 객체이다. ☀️Attribute대상이 아닌 넘어온 파라미터를 대상으로 한다. 찾으시는 내용은 Ctrl+F로 더 쉽게 찾을 수 있습니다. 연산자 예시 결과 +..
JSP액션태그 javaBean, SetProperty, GetProperty(예시 포함)
·
JSP
🟰JSP 액션태그 ☀️자바를 모르는 사람도 간편하게 사용할 수 있도록 만든 태그 🟰JavaBean ☀️지정한 id로 변수를 만들고 ☀️지정한 class의 기본 생성자를 호출하여 빈 객체를 생성한다. ☀️useBean으로 생성된 객체는 지정한 scope의 attribute로 자동 추가된다. ☀️scope를 지정하지 않으면 기본값은 pageContext이다. 🟰JavaBean을 만들기 위한 세가지 필수 조건 ☀️Private 멤버 필드 ☀️public getter/ setter ☀️기본 생성자(오버로드한 생성자를 만들지 않은경우 기본 생성자를 생성하지 않아도 자동으로 생성된다.) ⏬예시 코드 //데이터 필드 public class Member { private String name; private int a..
JSP - Foward
·
JSP
redirect를 아직 안보고 오신분은 먼저 redirect를 읽고 와서 이 글을 읽어주길 바란다. 둘의 차이를 알아야 적절하게 사용할 수 있기 때문이다. https://sunro1994.tistory.com/139 🟰Foward ☀️서버에서 임의로 응답할 처리할 페이지를 변경하는 기술 ☀️클라이언트는 1회만 요청하면 서버에서 다른페이지에 요청과 응답을 넘겨준다. ☀️리다이렉트는 요청을 2회하지만 리다이렉트는 1회!이다. ☀️요청과 응답을 넘겨받은 페이지에서는 기존 request를 그대로 사용할 수 있다. ☀️클라이언트가 주소를 변경하는 것이 아니라서 주소창이 바뀌지 않는다. ☀️서버가 보유한 자원(root아래 자원)으로 포워딩하기 때문에, 다른 서버(naver, daum, google등)으로 이동이 불..
JSP - Redirect
·
JSP
🟰Redirect ☀️ 클라이언트에게 새로 요청할 주소를 지정해준다. ☀️ 클라이언트가 스스로 요청하기 때문에 현재 서버가 아니라도 다른 위치로 이동할 수 있다. ☀️ 새로운 요청이 만들어 지기 때문에 request에 담겨있는 parameter, attribute는 사용할 수 없다. 만약 위 내용이 이해되지 않는다면 이 글을 보고 오기 바란다. https://sunro1994.tistory.com/136 ☀️redirect를 할 때에는 응답코드 300번대가 발생한다. ☀️서버에서 새로 요청할 주소를 알려줘서 클라이언트가 다시 요청하는 방식이다. ☀️redirect하는 소스에는 소스코드(body)가 없다. ☀️대신 전달받은 주소로 다시 요청하는 것이기 때문이다. ⏬예시코드 redirect에 대한 추가 설명..
JSP 내장 객체 유효 범위 (pageContext,Request,Session,Application), Attribute
·
JSP
🟰내장 객체 별 유효 볌위 ☀️pageContext 현재 JSP 페이지 내부에서 유효하다. ☀️Request 현재 요청 내에서 유효하다. forward를 하면 다음 페이지에서도 유효하다. ☀️Session 현재 사용자의 접속이 유지되는 동안 유효하다. ☀️Application 현재 서버가 종료되기 전까지 유효하다. 🟰객체의 함수 ☀️ 내장객체.setAttribute(String name, Obejct o ) 지정한 내장객체에 name과 o를 연결하여 저장한다. ☀️내장객체.getAttribute(String name) 지정한 name으로 객체 o를 반환받는다. ☀️내장객체.removeAttribute(String name) 지정한 name으로 저장된 객체를 제거한다. 예시 코드 ​ 위와 같은 내용이 이해..