[주절주절]
Html의 값을 js에서 사용할 때: Document.getElementId() //없다면 null 리턴
sm업무: 예외처리
윈도우에서 java 환경 변수 설정 방법:
내 PC > 시스템 속성 > 고급 > 환경 변수 >
새 시스템 변수 > 변수 이름(JAVA_HOME) > 변수 값(jdk 경로)
User와 System 환경 변수의 차이는 뭘까.
서블릿, 자바 웹 기술의 새 지평을 열다.
- 자바 애플릿: 애플리케이션 전체가 클라이언트에 다운로드된 후 실행. 속도, 보안, 유연성 등에서 한계
- 서블릿: 서버 측에서 실행. 클라이언트의 요청을 받으면 서버에서 처리한 후, 응답으로는 결괏값만 보내주는 구조
- 자바 파일을 컴파일한 클래스 파일 형태. 실행하고 관리해주는 런타임이 서블릿 컨테이너이며, 아파치 톰캣이 대표적인 서블릿 컨테이너
jsp구조
1. 페이지 지시자 (지시어)
2. 스크립트 요소 (선언부)
3. 스크립트 요소 (표현식)
4. 스크립트 요소 (스크립틀릿)
1. 지시어
- JSP페이지를 실행될 때 지시어에 지시되어 있는 대로 따르게 끔 함.
- 지시어에는 key value로 설정하고, 주로 스크립트 언어나 인코딩 방식 등을 설정한다.
- page 지시어: JSP 페이지에 대한 정보를 설정
- 자주 사용되는 속성: pageEncoding, Language, contentType, trimDirectiveWhitespaces
- trimDirectiveWhitespaces: 지시어 때문에 생성된 불필요한 공백을 제거하려면 trimDirectiveWhitespaces 속성을 사용한다.
- page 지시어 속성에 trimDirectiveWhitespaces를 추가하여 true로 설정
- trimDirectiveWhitespaces: 지시어 때문에 생성된 불필요한 공백을 제거하려면 trimDirectiveWhitespaces 속성을 사용한다.
- include 지시어: 외부 파일을 현재 JSP 페이지에 포함시킴
- 반복되는 부분을 별도의 파일에 작성해두고 필요한 페이지에서 include 지시어로 포함
- taglib 지시어: 표현 언어
- EL에서 자바 클래스의 메서드를 호출할 때 편하게 하기 위함
* EL이란 JSP 스크립트의 표현식을 대신하여 속성 값을 쉽게 출력하도록 고안된 언어이다.
- EL에서 자바 클래스의 메서드를 호출할 때 편하게 하기 위함
스크립트 요소
- 선언부 <%! %>
- 선언부에서는 스크립틀릿이나 표현식에서 사용할 멤버 변수나 메서드를 선언
- 서블릭으로 변환 시 jspService() 메서드 외부에 선언됨 - 스크립틀릿 <% %>
- JSP 태그에서는 표현할 수 없는 작업을 Java 코드를 작성하고 자유로운 작업을 수행하는 경우에 사용된다.
- Java 코드를 위한 각 코드에는 반드시 ;(세미콜론)이 필요하다. - 표현식 <%= %>
- 실행 결과로 하나의 값이 남는 문장
- 즉, 상수, 변수, 연산자를 사용한 (수)식, 반환값이 있는 메서드 호출 등
Attribute vs Property 차이
Attribute: 페이지가 로딩된 후 바뀌지 않는 애들
Property: 페이지가 로딩 된 이후에도 바뀌는 애들
(100% 다 이렇다고 하진 않지만 대략 이렇다고 생각하면 된다.)
☆ 중요 내장 객체: Request Response Application Session Out Exception Session Cookie
request: javax.servlet.http.HttpServletRequest
request 내장 객체는 JSP에서 가장 많이 사용되는 객체로, 클라이언트에서 값을 요청할 때 주로 사용된다.
exception: java.lang.Throwable
java: web과 관련 x
javax: web과 관련되어있음
GET 방식 정송 링크나 (POST 방식 전송) 버튼을 클릭 때 나타나는 페이지 소스
- getMethod(): GET과 POST과 같은 전송 방식을 반한
- getRequestURL()
- getRemoteAddr()
- getQueryString()
response:
sendRedirect()로 페이지 이동
ex) 로그인 처리하기
- request 내장 객체로 전송된 매개변수를 얻어옴
- 회원 인증을 진행
- 인증에 성공하면 ResponseWelvome.jsp이 실행되며, snedRedirect() 메서드에 건넨 응답 페이지로 이등
- 인증에 실패하면 request 내장 객체를 통해 로그인 페이지, 즉 ResponseMain.jsp로 포워드(트렌젝션)
- 매개 변수 longinError가 전달되고 로그인 실패 메시지를 화면에 출력
폼값으로 전송되는 값은 항상 String 타입이므로 산수를 하려면 형태 변환을 해야 한다.
Application 객체
application 내장 객체는 web 단 xml 객체를 가져오고 현재 서비스를 하고 있는 웹 서비스의 경로를 파악할 때 사용된다.
핵심 요약
request 객체: 클라이언트의 요청을 받거나 웹 브라우저에 대한 정보 혹은 요청 헤더에 대한 정보를 읽을 때 사용
response 객체: 요청에 대한 응답을 웹 브라우저로 보낼 때 사용. 페이지 이동이나 응답 헤더를 추가할 때도 사용
out 객체: 웹 애플리케이션을 구성하는 모든 JSP에서 접근 가능한 객체로, 웹 애플리케이션에 대한 설정값을 저장할 때 주로 사용
exception 객체: 예외 처리를 위해 사용
내장 객체의 영역은 각 객체가 저장되는 메모리의 유효기간
- page 영역: 동일한 페이지에서만 공유된다. 페이지를 벗어나면 소멸.
- request 영역: 하나의 요청에 의해 호출된 페이지와 포워드(요청 전달)된 페이지까지 공유
- session 영역 클라이언트가 처음 접속한 후 웹 브라우저를 닫을 때까지 공유
- application 영역: 한 번 저장되면 웹 애플리케이션이 종료될 때까지 유지
'🤓천재교육 풀스택 1기 노트' 카테고리의 다른 글
JSP 지시어와 스크립트 요소 (0) | 2023.07.30 |
---|---|
JSP 기본 (0) | 2023.07.30 |
천재교육 풀스택과정 1기 DAY17 (0) | 2023.06.05 |
천재교육 풀스택 1기 DAY16 (0) | 2023.06.01 |
천재교육 풀스택 과정 1기 Day15 (0) | 2023.05.31 |