Spring Boot

addFlashAttribute 활용 - 팝업알림 띄우기

어코링 2024. 5. 7. 16:42

업무 프로젝트 진행시 팝업을 띄워 알림을 보여줘야했었다. 

많은 데이터 요구 되지 않고, 스토리지와 캐시 차지를 하지 않기 위해 addFlashAttribute 을 사용해서 팝업창을 띄워보기로 했다.

addFlashAttribute 는 처음 사용하게 되었는데 flash 속성에 객체를 저장할 수 있다점으로 일회성으로 한번 사용하면 Redirect 후 값이 소멸된다

addAttribute와 addFlashAttribute의 차이

그렇다면 addAttribute와 addFlashAttribute의 차이는 무엇일까?

addAttribute는 학원 프로젝트 진행시 백단에서 프론트단으로 값을 보낼때 많이 사용했던 메서드다.

그럼 저 둘의 차이는??

addAttribute는 값을 지속적으로 사용해야할 때 addFlashAttribute는 일회성으로 사용해야할때 사용해야 한다 !

 

 

		int errmsg = 1;
	        		reAttr.addFlashAttribute("errmsg", errmsg);

	        		model.addAttribute(reAttr);
	        		return "redirect:/main.do";

 

에러 페이지가 나면 main페이지로 redirect되고,

 

선언한 errmsg라는 코드 번호로 addFlashAttribute를 이용해서 front로 값을 전달하려한다.

그리고 값은 model에 넣어주었다

 

  if(errmsg === "1"){
    	newriver.ajaxpopup.open('/agree/modal/alert.do', { backgroundClose : false }, { 'cont' : "앱 가입 번호와        인증 연락처 정보가 다릅니다.          다시 인증해주세요." });
    }

 

js파일에선  errmsg코드가 1 이면 만들어놓은 alert로 매핑을 해주고 cont 내용안에 텍스트를 보여준다