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

Ambition님의 프로필 이미지
Ambition

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

서블릿

서블릿 참조 공유 변수에 대한 해결책이 궁금합니다.

해결된 질문

작성

·

271

0

스프링 핵심 원리 - 기본편 강의를 듣고 정리한 내용을 다시 보자면, 싱글톤을 기본으로 사용하는 스프링 컨테이너에서는 공유 변수를 방지하기 위해 order() 메서드 안에 지역변수로 값을 설정해야 한다고 나와있습니다.

public void order(String name, int price) {
	System.out.println("name = " + name + " price = " + price);
	return price;
}

그런데 JPA 활용편에서는 임베디드 타입일 경우에는 new 생성자로 이를 해결하였고, 정적 팩토리 메서드 방식에서는 createOrder() 안에 new로 인스턴스를 따로 만들어서 객체 값을 관리하는 것으로 배웠습니다.

그렇다면 싱글톤으로 관리되는 서블릿에서도 지역변수 또는 new 생성자를 통한 불변 객체로 참조 변수가 공유되는 것을 막을 수 있나요?

답변 1

0

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

네, 이해하신대로 지역변수로 만들거나 불변객체 도입하는 방법을 사용하시면 됩니다.

감사합니다.

Ambition님의 프로필 이미지
Ambition

작성한 질문수

질문하기