분류 전체보기

    [JSP & Servlet] 세션(Session) - 로그인 정보 유지

    [JSP & Servlet] 세션(Session) - 로그인 정보 유지

    일반 포탈 사이트에 로그인했을 경우 다른 사이트에 갔다가 돌아와도 로그인이 유지되는 경우를 본 적 있을 것이다. 그 이유는 세션(Session)을 사용하여 로그인 정보를 저장해 두었기 때문이다. 아래 링크 참고하면서 보면 이해하는데 도움됩니다. https://yeo-computerclass.tistory.com/130 [JSP & Servlet] 세션(Session)과 쿠키(Cookie) - 1 설명에 앞서 간단하게 세션과 쿠키에 대해서 정의하도록 하겠다. 세션(Session) : 클라이언트의 정보가 서버 컨테이너에 저장되는 기능 쿠키(cookie) : 클라이언트의 정보가 클라이언트에 저장되는 yeo-computerclass.tistory.com sessionLogin1.jsp sessionLogin2...

    [Servlet] 쿠키(Cookie)

    쿠키(Cookie)란? 쿠키(Cookie)란 클라이언트측에서 관리되는 정보를 의미한다. 세션과의 차이를 비교해보면 세션은 서버측에서 관리되지만 쿠키는 클라이언트에 정보가 저장된다. 또한 쿠키의 정보는 세션과 달리 브라우저를 종료한다고 해도 생존 기간이 지정되면 생존기간 동안 데이터가 사라지지 않는다. 쿠키(Cookie)는 하드디스크에 파일로 저장되기 때문에 그 파일이 남아있는 한 쿠키는 항상 유지된다. 하지만, 쿠키(Cookie)는 클라이언트에서 관리되기 때문에 보안적으로 매우 취약한 면을 가지고 있다. 하드디스크에 있는 쿠키 파일을 수정할 염려가 있기 때문이다. 쿠키를 파일에 저장하는 형태가 아닌 브라우저에 저장하는 형태(세션 쿠키)도 가능하지만 보안이 필요한 정보는 쿠키(Cookie)를 사용하지 않고..

    [Servlet] 세션(Session)

    [Servlet] 세션(Session)

    세션(Session)에 동작 흐름에 대한 자세한 설명은 아래에 포스팅했으므로 보고 오는 것이 이해하는데 더 도움될 것이다. https://yeo-computerclass.tistory.com/110?category=1269285 [JSP & Servlet] 세션(Session) 📌세션(Session) 이란? 세션의 개념을 이해하기 위해선 HTTP 프로토콜의 특성부터 이해해야 한다. HTTP 프로토콜의 대표적인 특징 중의 하나는 상태를 유지하지 않는 것이다. 즉, 클라이언트가 한 번 yeo-computerclass.tistory.com 세션(Session)이란? 정보가 서버의 메모리에 저장된다. 브라우저의 Session 연동은 Session Cookie를 이용한다. 브라우저 당 한 개의 Session이 주..

    BufferedReader / BufferWriter

    BufferedReader와 BufferedWriter는 버퍼를 이용해서 읽고 쓰는 함수이다. 이 함수는 Scanner와 System.out.println()과 기능이 유사하지만 버퍼를 이용하기 때문에 이 함수를 이용하면 입출력의 효율이 올라간다. (속도 측면에서도 훨씬 빠르다.) 그럼 왜 버퍼를 이용하면 속도가 빠를까? 간단하게 생각했을 때 중간에 버퍼를 거치기 때문에 더 느리지 않을까란 생각을 할 수도 있다. 예를 들어 설명하겠다. 모래 사장에서 모래를 퍼서 다른 구역으로 옮긴다고 했을 때 조금씩 여러번 옮기는 것보다 한 곳에 가득 채워서 (버퍼) 한 번에 나르는 것이 더욱 효율적일 것이다. 즉 버퍼를 사용하면 모아두었다가 한 번에 전송하기 때문에 효율적이다. buffer >데이터를 일시적으로 보관하..

    [JSP & Servlet] 자바빈(JavaBean)

    [JSP & Servlet] 자바빈(JavaBean)

    📌자바빈(JavaBean)이란? 회원 가입 요청에서 회원 한 명의 정보가 들어온다. 이 때 이름 따로 주소 따로 번호 따로 데이터를 다루게 되면 각 데이터의 관련성이 없으므로 회원정보라는 클래스를 설계하여 해당 클래스에 이름,주소,번호를 속성으로 정의하여 한 명의 회원 정보로 다루는 것이 보다 객체지향적인 코드이며 효율적인 코드라는 것은 알 것이다. 다른 예시를 들어보겠다. 웹 사이트를 개발할 때 디자이너와 프로그래머가 협업을 하여 개발을 할 것이다. 그런데 프로그래머가 JSP 페이지의 이곳 저곳에 자바 코드를 입력해놓으면 디자이너 입장에서는 해당 페이지를 해석하기에 어려움을 느낄 것이다. 자바빈을 사용하면 이에 도움이 될 수 있다. 자바빈(JavaBean)은 JSP 페이지의 디자인 부분과 비즈니스 로직..

    [JSP & Servlet] 템플릿 페이지

    📌템플릿 페이지를 사용하는 이유 웹 서핑을 하다보면 웹사이트 화면 구성에서 상단 혹은 좌측 메뉴는 고정되어 있고 메뉴에 따라 메인 페이지가 변경되는 경우를 본 적 있을 것이다. 이런 경우 템플릿 페이지를 사용하면 매우 효율적이다. 만약 템플릿 페이지를 사용하지 않으면 레이아웃을 변경할 경우 작성된 페이지를 모두 새로 작성해야 한다. 즉, 템플릿 페이지는 레이아웃을 구성하고 각 영역의 내용은 다른 페이지에서 가져오므로 전체 페이지 구성 수정시에도 이 템플릿 페이지만 변환시키면 되므로 매우 편리하다. 📌템플릿 페이지의 설계 템플릿 페이지의 설계에서 중요한 것은 레이아웃 구조를 결정하는 것이다. 템플릿 페이지 자체가 레이아웃 구조나 마찬가지이기 때문이다. 템플릿 페이지 설계를 위해서는 사이트 화면의 틀이 결정..

    [JSP] JSP 액션 태그

    📌액션 태그란? 액션 태그란 JSP 페이지에서 Java 코드 등의 스크립트 언어를 사용하지 않고도 ( HTML 태그 형태로 ) 다른 페이지의 서블릿이나 자바빈의 객체에 접근할 수 있도록 태그를 이용해 구현된 기능을 말한다. 액션 태그를 통해서 개발자는 페이지의 흐름을 제어하거나 자바빈의 속성을 읽고 쓰며 애플릿을 사용하는 등의 다양한 기능을 활용할 수 있다. 또한 이런 기능들은 스크립틀릿 등의 스크립트 요소(자바 코드)를 사용하지 않기 때문에 개발자는 JSP 페이지의 내부적인 프로그램 로직을 사용자로부터 감출 수가 있다. 이 말은 즉, 액션 태그를 사용하면 사용자에게 보여지는 프레젠테이션 부분과 사용자의 요청을 처리하는 비즈니스 로직 부분(프로그램 부분)을 분리하는 것이 가능하다는 것을 의미하며, 웹 프..

    [JSP] JSP 영역 객체 (application, session, request, pageContext)

    📌영역 객체란? JSP에서 제공하는 내장 객체들 중 pageContext, request, session, application 객체들은 해당 객체에 정의된 유효 범위 안에서 필요한 객체(데이터)들을 저장하고 읽어 들임으로써 서로 공유할 수 있는 특정한 영역을 가지고 있다. 예를 들어 session 객체의 속성으로 지정된 객체는 세션이 유지되는 한 서로 다른 JSP 페이지라 할지라도 공유해서 사용하는 것이 가능하다. 그렇게 때문에 이들 4가지 내장 객체를 따로 영역 객체라고도 부른다. 공유되는 데이터를 속성(Attribute)이라고 하며 속성을 공유할 수 있는 유효 범위를 영역(Scope)이라고 한다. application 객체 application 객체는 해당 웹 어플리케이션이 실행되고 있는 동안에 속..