N스크린하이브리드앱과정/JSP:Model-1

[4주][2일][5~8th] JSP: 내장객체, 액션태그의 활용

광천스러움 2013. 8. 6. 14:51

★ 오늘 배운것들

1. 모든 내장객체 속성값 설정 가져오기

.setAttribute(이름,값)

.getAttribute(이름)

.removeAttribute(이름)

 

2. 내장객체 영역

(1) page : pageContext 현 페이지의 정보가 저장되면서 유지가 됨. 하나의 페이지에 대해서만 유

              지가 됨.

(2) request : request 현 페이지 -> 다음페이지...이렇게 페이지를 연결연결하는 것이다.

(3) session : session 세션정보 저장. 세션이 클라이언트와 서버의 연결인데 그 연결정보를 저장하

                  고 유지한다. 최대 30분(1800초).

(4) application : application 웹어플리케이션(서버 구동)이 실행되고 있는 동안 유지

 

3. 액션태그 : <% %>를 사용하지 않고 태그처럼 사용할 수 있게 jsp에서 지원된 기능

 - 종류 : forward, include, usebean, setProperty, getProperty

 - forward : A에 있는 모든 정보를 가지고 B페이지로 이동함.

               이동했을 때 주소줄은 A주소가 나오고, 내용은 B가 처리된 결과가 나온다.

 

 

☆ 실습(1) : request에서 http헤더정보

전체 소스

 

결과

 

 

☆ 실습(2) : response에서 세션값과 서버정보

1. 실습(1)에 테이블이 끝나는 부분에서 아래 소스를 붙여넣으면,

<%
//response 서버 -> 클라이언트
out.println("세션값: "+session.getId()+"<br>");
out.println("세션값유지기간: "+session.getMaxInactiveInterval()+"<br>");

//application
out.println("서버정보"+application.getServerInfo()+"<br>");
%>

 

아래의 정보가 추가된다.

※ session값은 마우스를 움직이지 않고 컴퓨터가 정지상태일 때 30분동안 유지된다. 그래서 1800초

   라는 결과가 나타난 것이다. 그리고 컴퓨터를 계속 사용하면 그냥 계속 유지된다.

 

 

☆ 실습(3) : 내장객체 출력 실습, 액션태그 활용.

1. 먼저 파일 3개를 만든다. {"form4.jsp", "formPro4.jsp", "formProPro4.jsp"}

2. form4.jsp에서 아이디, 비밀번호, 전송창을 만든다.

요렇~게!

 

3. formPro4.jsp에서 입력한 아이디와 비밀번호를 출력해본다.

 

4. 그럼 결과가 그림과 같이 나올 것이다.

 

5. 이제 내장객체를 사용해 볼 것이다. 오늘 우리가 시험해볼 내장객체는 4개가 있다.

 (1) formPro4.jsp

 

입력된 아이디와 패스워드값, 그리고 4개의 값 모두 잘 출력된다.

 

하지만 하이퍼링크를 눌러 다음 페이지로 넘어가면, 2개의 값을 빼고 모두 null값이 된다. 일까?

- session값은 한번 연결되면 컴퓨터를 사용하는 한 계속 유지하고

   application값은 서버가 연결되어 있는 한 그 값을 계속 유지해주기 때문이다.

- request값의 경우, 입력받는 값이 없이 그저 링크만 클릭하여 이동했으므로 값이 없고,

   page값은 그 페이지 내에서만 유지되므로 값이 없다.

   id와 패스워드 역시 링크만 클릭했지 입력값을 받은 적이 없으므로 값이 없다.

 

 

6. response 객체를 이용해 자동으로 링크를 걸어줄 수도 있다. 값은 변함없다.

 

7. 자바스크립트의 location을 이용해서 자동링크를 걸어줄 수도 있다.

    이 경우, 편법으로 입력받는 아이디와 패스워드 값을 넘겨줄 수 있다. form에서 get방식을 사용한다

    면 말이다.

 

8. 액션태그를 이용하면 위의 7번처럼 입력값을 편법으로 넘겨주지 않아도 된다.

- forward 기능으로 자동으로 링크를 걸어 페이지를 넘겨줄 수 있다. 이때 좋은 것은, 입력받은 정보가

  사라지지 않고 함께 넘겨준다는 것이다!

- param 기능으로 value값을 지정해주면, "form4.jsp"에서 <input>태그를 만들지 않아도 알아서 value

  값을 넘겨준다. 참 편리한 기능이다.

 

결과

액션태그 forword가 입력값을 받아주기 때문에, request값은 살아있다!

 

 

☆ 실습(4) : 액션태그 include 활용하기

완성 결과

 

1. 4개의 jsp파일을 만든다. {"include1", "top", "left", "bottom"}

 

2. include1.jsp 파일에서 그림과 같은 형식의 표를 만든다. 아래 그림은 표의 초기 설정이다.

 

3. width값과 height값을 위의 결과 그림과 같이 셋팅하고, include로 나머지 3개의 파일을 불러와 적용

    할 것이다.

※ include를 사용하면 HTML의 index.html처럼 링크를 걸어 하나의 프레임으로 나타낼 수 있다.

 

4. 추가로 헤드에 글을 더 추가하려 한다. param액션태그를 사용하여 "hong님 할로" 라는 결과를 출력

    할 수 있다.

top.jsp파일에서

<%=request.getParameter("id")%>님 할로

이 코딩을 넣어주면,

위와 같은 결과가 출력된다.

 

s(ㅇ_ㅇ)/ 기본적인 내용인거 같은데 뭔가 어려운게 찝찝~하구나~