인프런 커뮤니티 질문&답변

emibgo2님의 프로필 이미지
emibgo2

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

서블릿 필터 - 소개

static 변수

작성

·

241

0

안녕하세요

강의 잘 듣고 있습니다.

앞서 강의 내용과 좀 먼 내용인점 죄송합니다.

다름이 아니라 이번에 강의를 통해서 쌓은 실력으로 

학생들 끼리 작은 프로젝트를 준비중입니다.

다름이 아니라 특정 URL 접근했을때 랜덤으로 4자리수 중복없이 배출하고 싶은데

서버가 올라갈 때 리스트를 생성하고

url 접근 할때마다 해당 리스트에서 랜덤 index에 있는 값을 remove 하는 코드 입니다.

현재 까지 들었던 강의 중 static으로 변수로 설정하신 부분이 어느정도 있어서 착안하여 제작하였는데 혹시 

서버에 큰 이슈를 불러올만한 사항이 있는지 여쭤봐도 괜찮을까요 혹은 static 변수를 사용 했을때 주의점, 문제점 좀 알려주시면 감사하겠습니다.

※ 참고

임시 번호라서 배출한 값을 사용자가 갖고 있다가 사용 후엔 서버에서 다시 회수하고 추후에 다시 배출할 생각입니다.

DB는 My SQL 쓰고 있고 간단하게 JPA 적용하여 사용중입니다.

답변 3

0

emibgo2님의 프로필 이미지
emibgo2
질문자

감사합니다 😀

0

emibgo2님의 프로필 이미지
emibgo2
질문자

그럼 아래와 같이 사용하면 동시성 문제가해결되고 static 으로 사용해도 괜찮다는 말씀이시죠!?

적어도 동시성 문제에서는 일반 ArrayList를 사용하시는 것보단 낫습니다.

0

안녕하세요. emibgo2님, 공식 서포터즈 David입니다.

.
static 변수를 왜 사용하는지에 대해 학습하시면 자연스레 사용시 문제되는 부분도 알 수 있을 것 같습니다.

하나의 자원을 공유하는 관점에서 보자면 동시성 문제가 발생될 수 있습니다.

자바에서는 이런 문제를 해결하기 위해 ConcurrencyCollection을 지원합니다.
.
감사합니다.

emibgo2님의 프로필 이미지
emibgo2

작성한 질문수

질문하기