JSP중~1

JSP 중복 로그인 (세션 바인딩 리스너)

중복 로그인을 회피하기 위해 HttpSessionBindingListener 인터페이스를 구현했습니다

Session Listener에서 두 가지를 비교해서 설명 해 드리면

HttpSessionListener는 세션의 생성과 세션이 해제 되는 이벤트에 맞게 리스너를 호출 할 수 있습니다.

HttpSessionBindingListener는 세션바인딩리스너 인터페이스를 구현한 세션에 바인딩 시키거나 언바인딩 되는 이벤트에 맞게 리스너를 호출 할 수 있습니다.

(세션의 속성을 추가 , 제거 를 뜻함)

 

1. 흐름

1.1

header.jsp 에서 로그인 시도 - ajax를 통해 서블릿으로 아이디와 비밀번호 및 아이디 저장 체크 유무 전송

1.2

FrontController.java 에서 url-pattern 및 분기를 통해 해당 Command로 이동

1.3

LoginCommand.java 에서 아이디와 비밀번호가 알맞을 경우, setSession을 통해 HashTable에 저장합니다.

세션바인딩 리스너는 setSession 메소드가 호출 했을 경우 valueBound가 실행 되며 ,

session.invalidate(); 와 같이 세션의 속성을 제거 했을 때 valueUnBound가 실행됩니다.

 

그리고 세션바인딩 리스너 인터페이스를 구현한 클래스는 싱글톤 패턴을 통해 효율적으로 관리됩니다.

이때 유저의 정보를 담고 있는 HashTable은 static으로 지정을 해 스태틱 메모리 영역에 저장을 합니다.

이는 공유하기 위해 요기다가 저장 하는 겁니당

1.4

이후 header.jsp에서 로그아웃을 하면 서블릿을 통해 해당 Command(Logout)로 이동하여 session.invalidate(); 를

실행합니다. 이 때 세션바인딩 리스너에서 valueUnBound가 실행되며 HashTable에서 해당하는 아이디가 제거됩니다.

1.5

중복아이디를 판단하는 메소드는 간단합니다. 세션 바인딩 리스너에서 isUsing 메소드를 통해서 현재 아이디가 HashTable

에 담겨 있다면 true를 반환하고, 없다면 false를 반환합니다.

LoginCommand에서 SessionListener.getInstance().isUsing(userId) 를 조건문으로 두어 중복로그인 인지 판별합

니다.

 

header.jsp


 

LoginCommand.java


 

SessionListener.java


 

 

'Spring' 카테고리의 다른 글

DI 설정 방법 - xml  (0) 2018.09.06
DI 설정 방법 - JAVA  (0) 2018.09.06
DI 설정 방법 - Java & xml 같이 사용  (0) 2018.09.06
Spring 한글 깨짐 현상  (0) 2018.07.17
6강. DI 설정 방법 - 3 (xml 사용)

#DI 설정 방법

오늘은 IOC컨테이너 안에 의존하는 객체인 DI를 설정하는 방법을 알아보자 !

총 3가지의 방법이 있다.

  1. DI in xml
  2. DI in java
  3. java 와 xml 같이 사용

 

 

###1. XML파일을 이용한 DI 설정 방법(DI in XML)

image

 

image

image

 

 

 

 

'Spring' 카테고리의 다른 글

Spring 중복 로그인 (세션바인딩 리스너) 정리  (4) 2019.04.26
DI 설정 방법 - JAVA  (0) 2018.09.06
DI 설정 방법 - Java & xml 같이 사용  (0) 2018.09.06
Spring 한글 깨짐 현상  (0) 2018.07.17
6강. DI 설정 방법 - 3 (java 사용)

DI 설정 방법

오늘은 IOC컨테이너 안에 의존하는 객체인 DI를 설정하는 방법을 알아보자 !

총 3가지의 방법이 있다.

  1. DI in xml
  2. DI in java
  3. java 와 xml 같이 사용

 

2. JAVA를 이용한 DI 설정 방법

image

 

이번에 DI설정하는 방법은 바로 JAVA를 이용해서 스프링 설정(DI 설정) 하는 방법이다. 그럼 의존성 객체를 어떻게 생성하는지 소스를 통해 확인하자

 

 

'Spring' 카테고리의 다른 글

Spring 중복 로그인 (세션바인딩 리스너) 정리  (4) 2019.04.26
DI 설정 방법 - xml  (0) 2018.09.06
DI 설정 방법 - Java & xml 같이 사용  (0) 2018.09.06
Spring 한글 깨짐 현상  (0) 2018.07.17
6강. DI 설정 방법 - 3 (java & xml 같이 사용)

DI 설정 방법

오늘은 IOC컨테이너 안에 의존하는 객체인 DI를 설정하는 방법을 알아보자 !

총 3가지의 방법이 있다.

  1. DI in xml
  2. DI in java
  3. java 와 xml 같이 사용

 

3. XML과 JAVA를 같이 사용

image

1. xml파일에 JAVA파일을 포함시켜 사용 하는방법

DI in xml 과 DI in JAVA와 두개 합친거와 거의 동일하지만, xml파일 안에 configuration 어노테이션을 가져오겠다는 명령문 하나를 삽입해야한다.

 

 

2. JAVA파일 안에 XML 파일을 가져와 사용하는 방법

 

 

'Spring' 카테고리의 다른 글

Spring 중복 로그인 (세션바인딩 리스너) 정리  (4) 2019.04.26
DI 설정 방법 - xml  (0) 2018.09.06
DI 설정 방법 - JAVA  (0) 2018.09.06
Spring 한글 깨짐 현상  (0) 2018.07.17
Spring 한글 깨짐 현상

Spring 한글 깨짐 현상

 

'Spring' 카테고리의 다른 글

Spring 중복 로그인 (세션바인딩 리스너) 정리  (4) 2019.04.26
DI 설정 방법 - xml  (0) 2018.09.06
DI 설정 방법 - JAVA  (0) 2018.09.06
DI 설정 방법 - Java & xml 같이 사용  (0) 2018.09.06

+ Recent posts