수업/JSP 11

14 표준 태그 라이브러리 (JSTL)

JSTL ( javaServer pages Standard Tag Library)표준화된 커스텀 태그들의 집합JSTL에서 정의한 태그를 사용하려면 이것을 구현한 자바클래스들과 TLD파일을 가지고 있어야 함 태그의 형태액션태그와 커스텀태그는 모두 XML태그임 시작태그와 종료태그를 가짐속성의 값은 따옴표 사용                              Q1Q2Q3지문 Q3다음 태그의 의미를 정확히 설명한 것은 무엇인가?1http://www.daum.net의 내용이 브라우저에 출력된다.2http://www.daum.net로 강제 이동된다.3변수 result에 http://www.daum.net의 내용이 문자열로 저장된다.4변수 result에 문자열 “http://www.daum.net”이 저장된다.정..

수업/JSP 2024.10.06

13 표현언어

표현언어 (EL) ${name]name은 표현언어의 내장객체가 될 수 있음name은 영역에 저장된 속성의 이름이 될 수 있음- page ,request, session, application 영역에 등록된 속성에서 이름이 name인 것을 찾음. 찾을 수 없다면 null을 반환- 수식 계산의 결과는 객체의 문자열 표현이 됨 표현언어의 사용 스크립트 요소 밖에서 사용태그의 몸체내부나 데이터 출력이 필요할때 사용됨 ${header["host"]} 헤더라는 것은 표현언어의 내장객체이다. 요청헤더에 host라는 이름으로 넘어온 값이 출력됨 ${param['x']}param은 표현언어의 내장객체인데, 요청파라미터중에서 이름이 x인 값 ${person.name}person은 EL의 내장객체(대부분 Map유형)  또는..

수업/JSP 2024.10.06

10.자바빈

자바빈 JSP요소들과 맞물려 사용 가능한 사용자 정의 자바 클래스자바빈 설계 규약(자바빈API스펙 ) 에 따라 작성해야함 JSP 페이지 안에서 사용할 데이터를 다루려는 목적비지니스 로직과 프레젠테이션 로직의 분리-HTML과 JSP기본 문법으로 프레젠테이션 로직( 결과를 보여주는 기능을 구현)-자바빈을 이용하여 비즈니스로직(결과를 만드는기능)을 구현여러 JSP페이지에서 자바빈을 재사용-자바빈은 별도의 클래스파일로 존재함 자바빈 클래스생성자가 필요하면 파라미터가 없는 기본생성자를 반드시 만들어야함읽기와 쓰기가 가능한 속성을 가질 수 있음모든속성에 대해 getter와 setter를 정의getter 메서드는 파라미터가없으며 속성타입과 일치하는 리턴타입을 가짐setter메서드는 속성의 타입과 일치하는 하나의 파라..

수업/JSP 2024.10.06

8.쿠키 9.세션

쿠키 웹서버가 쿠키를 만들어서 응답헤더에 포함시킴웹브라우저가 쿠키를 저장했다가 차후 같은 서버에 다른 요청을 보낼때 저장 중인 쿠키를 요청헤더에 넣어보냄 서버와 클라이언트간 상태정보를 공유함으로써 연이은 여러 요청을 관련지어 처리할 수 있음웹서버는 쿠키정보를 이용하여 사용자를 식별할 수 있음 기본적으로 쿠키는 그것을 보낸 서버에게만 전송될 수 있음쿠키에 도메인설정을 하면 같은 도메인 상에 있는 다른 호스트들과 쿠키를 공유할 수 있음cookie.setDoamin(".oracle.com")쿠키를 생성한 서버의 주소와 관련이 없는 도메인은 의미가 없음 경로: 클라이언트가 서버에 요청을 보낼때 쿠키를 보낼 서버상의 경로를 정하는 것지정경로(하위경로 포함에 있는 페이지만 쿠키를 보냄경로를 지정하지않으면 쿠키를 만..

수업/JSP 2024.10.06

7.모듈화된 jsp , 액션태그

정적 include방법include 지시어 사용JSp페이지를 서블릿프로그램으로 변환시키기 전에 삽입여러JSP페이지에서 공통으로 사용되는 스크립트 요소를 포함시킬 때 사용-공통으로 사용되는 변수나 메소드 정의를 포함시킬 때-변수나 메소드 정의는 독립적으로 실행될 수 없으므로 include지시어로 포함시킴(소스코드가 포함됨)-included 페이지에서 사용된 스크립트요소가 including페이지에 영향을 줄 수 있음 (변수값을 바꿀수가있음)  동적 include 액션 태그지정한 페이지를 태그가 위치한 부분에 포함시키되 해당 페이지의 실행 결과를 포함시킬 때 사용 요청이 처리될때 즉, jsp페이지가 실행될떄 처리됨 요청이 전달될때 파라미터를 추가할 수있음 기존파라미터보다 우선함request기본객체 respon..

수업/JSP 2024.10.05

6. 내장객체, scope

객체의 종류JSP페이지 내에서 선언하고 사용하는 객체 스크립트릿이나 선언에서 객체를 생성한 경우  을 이용해 자바빈 객체를 생성한 경우 JSP 내장 객체 JSP컨테이너가 번역 과정에서 만들어서 제공- jsp페이지 안에서 묵시적으로 선언되어 있는 객체-선언이나 초기화없이 사용할 수 있는 변수- 스크립트릿, 표현식, 표현언어 등에서 사용함   pageContext객체 page를 표현하고 page영역을 관리하는 객체페이지에서 사용되는 객체들의 레퍼런스를 저장하고 있음다른 내장객체의 참조값을 리턴하는 메소드를 제공 application 내장 객체웹 애플리케이션과 관련된 정보를 관리-web.xml에 저장된 설정 정보의 조회-웹컨테이너의 정보 조회-로그메세지의 기록-웹애플리케이션의 폴더 정보 조회 applicati..

수업/JSP 2024.10.03

4.JSP동작원리 5.요청과 응답

클라이언트가  서버에게 jsp페이지를 요청하면 웹컨테이너가 다음을 수행함 JSP라이프사이클 JSP페이지의 최초 요청을 처리할때 - jsp페이지를 서블릿 자바 프로그램(. java)(서블릿클래스를 만듦) 으로 변환(번역)-.java을 컴파일하여  서블릿클래스파일(.class)를 생성- 서블릿(.class)을 실행하여 클라이언트 요청을 처리 이후 요청의 처리시 JSP파일에 상응하는 서블릿이 존재하면 변환과 컴파일을 하지않음단 JSP페이지가 수정되면 다시 변환/컴파일 작업을 해야함 톰캣(웹컨테이너)가 서블릿을 실행  출력버퍼와 응답  실행결과를 즉시 클라이언트로 보내는게 아니라 버퍼에 담는다출력버퍼는 응답결과의 임시 저장소응답을 만들 때 먼저 출력 버퍼에 기록함Page지시어의 버퍼속성이 none이 아니어야함 ..

수업/JSP 2024.10.02

3강 JSP개요

JSP서버측 스크립트언어HTMl안에 자바코드를 포함 시킬 수있음서블릿 코드를 작성하는 편리한 방법을 제공 JSP언어의 확장 메커니즘표현언어 EL의 사용- 서버측 객체나 데이터를 쉽게 사용하고 표현할 수 있음JSTL과 같은 태그 라이브러리의 사용  JSP문서의 구성  탬플릿 데이터-정적데이터로 HTML이나 XML형식의 텍스트-응답결과를 만들때 그대로 출력되는 텍스트 JSP요소- 동적인 데이터의 추가-JSP태그로 표현되는 프로그래밍적 요소-적절한 Java코드로 번역되어 동적 컨텐츠가 만들어짐   JSP페이지의 구성 요소스크립트요소지시어액션태그내장객체표현언어JSTL과 사용자 정의 태그주석   스크립트요소의 종류 !!스크립트릿 : JSP페이지에 삽입되는 자바코드 조각서블릿클래스의 서비스 메서드를 작성할때 반영됨..

수업/JSP 2024.10.02

2강 eclipse개발환경

이클립스 java이외에도 다양한 언어를 지원하는 IDE오픈소스 커뮤니티 eclipse.org의 프로젝트 문자인코딩 설정  개발과실행  톰캣을 서버로 등록동적웹프로젝트를 생성(dynamic web project)실제 서비스를 위해 웹프로젝트를 war파일 형태로 톰캣에 배포함배포웹프로젝트를 웹 컨테이너에 배포함URL로 접근할수 있도록 웹애플리케이션을 톰캣에 등록하는 일localhost:8080/project이름/xxx.jsp로 접근  export 해서 war파일을 톰캣의 webapp폴더에 넣어준다그러고 톰캣을 startup시키면  배포됨( localhost:8080/project이름/xxx.jsp로 접근 ) 로접근가능해짐shutdown으로 톰캣을 끈다.

수업/JSP 2024.10.01