반응형

redirect binding이 안되는 것을 알아보았습니다.

이번에는 dispatch를 이용한 binding을 해보겠습니다.

 

이번에는 화면에 정상적인 주소가 출력됩니다.

첫 번째 서블릿에서 두 번째 서블릿으로 전달되는 request가 브라우저를 거치지 않고 바로 전달되었습니다.

따라서 첫 번째 request에 바인딩된 데이터가 그대로 전달된 것입니다.

 

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

웹 프로그램 실행 시 자원을 서블릿 관련 객체에 저장하는 방법으로 주로 HttpServletRequest, HttpSession, ServletContext  객체에서 사용되며 저장된 자원(데이터)은 프로그램 실행 시 서블릿이나 JSP에서 공유하여 사용합니다.

 

서블릿 관련 객체에서 바인딩 관련 기능을 제공하는 메서드

 - setAttribute(String name, Object obj) 자원을 각 객체에 바인딩합니다.

 - getAttribute(String name) 각 객체에 바인딩 된 자원(데이터)을 name으로 가져옵니다.

 - removeAttribute(String name) 각 객체에 바인딩된 자원(데이터)을 name으로 제거합니다.

 

실행 결과를 보면 정상적으로는 '서울시 성북구'가 출력되어야 하는데 null이 출력됩니다. 왜 그럴까요?  

 

포워딩 과정 1단계인 웹 브라우저에서 요청할 때 서블릿에서 전달되는 첫 번째 request는 웹브라우저를 통해 재요청되는 3단계의 두번째 request와 다른 요청입니다.

  즉, redirect방식으로는 서블릿에서 바인딩한 데이터를 다른 서블릿으로 전송할 수 없다는 것입니다.

 

 

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

지금까지 배운 포워딩과 다른점은 클라이언트의 웹을 거치지 않고 바로 서버에서 포워딩이 진행된다는 것입니다.

따라서 웹 브라우저 주소창의 URL이 변경되지 않습니다.

 

첫번째 서블릿
두번째 서블릿

실행하고 아래의 주소를 입력하면 주소는 그대로이지만 두번째 서블릿(second)가 작동하는 걸 확인할 수 있습니다.

 

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

find (파일 찾기)

 

 

pipe

 

 

정렬

 

복사

 

반응형
블로그 이미지

꽃꽂이하는개발자

,

Linux 명령어 모음

2020/Linux 2019. 12. 2. 13:45
반응형

pwd (print working directory)

현재 작업중인 디렉토리 출력

cd (change directory)

경로 변경

ls(list)

디렉토리 목록 확인

-a 는 all의 뜻

-al 은 all과 long

cd (copy)

파일 복사

ex) test파일을 tesa란 이름으로 복사

mv (move)

파일 혹은 디렉토리의 이동 , 이름을 변경할때도 사용

ex) tesa파일명을 tess로 바꾸었고 tess를 dowork로 이동시켰습니다.

mkdir (make directory)

디렉토리 생성

aaaa라는 디렉토리를 생성하였고

-p를 이용하여 aaaa폴더 내에 bbbb라는 폴더생성

rm(remove)

rm -r 디렉토리명

rm 파일명

aaaa라는 디렉토리 생제거

-r이 없으면 디렉터리 삭제 불가능/ 파일은 삭제 가능

cat (concatenate)

파일 출력

testfile 과 testfile2 를 합친 testfile_3 출력

head

파일의 앞 부분을 출력, 옵션을 정하지 않으면 10줄을 보여줍니다.

tail 하위 10줄 출력

 

chmod / chgrp 

 

권한 복구

계정과 그룹 변경

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

javascript의 location 객체를 이용한 forward

first를 입력했지만 바로 second 서블릿으로 이동되면서 출력되네요^^

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

refresh를 이용한 포워딩 역시 redirect 처럼 웹브라우저를 거쳐서 요청을 수행합니다.

response.addHeader("Refresh", "시간(초);url=서블릿명으로 재요청합니다");

 

위에 주소를 localhost:8080/pro08/first 를 입력하게 되면

1초 후에 second서블릿으로 넘어가서 출력이 됩니다.

반응형
블로그 이미지

꽃꽂이하는개발자

,