해결된 질문
작성
·
365
0
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예
[질문 내용]
강의 1분 정도에 View는 화면을 그리는데 모든 역량을 집중해야 한다고 말씀해주셨는데 아래의 케이스에서는 어느 영역에서 처리하나요?
db의 데이터 Y, N 또는 True, False의 데이터가 있을 경우 화면에는 예, 아니오 또는 사용, 미사용 과 같이 처리 할 경우 DB에서 조회 시, Service에서 if 또는 case 문으로 처리 가능하고, Front에서도 처리 가능한데 DB 또는 Service에서 처리 할 경우 해당 값이 변경 되야하면 서버를 재기동하는 부담이 있고, Front에서 할 경우는 단순 파일 배포를 통해 재기동하지 않아도 된다는 장점이 있을 것 같습니다.
어느게 정답일 수는 없겠지만 보통은 어떻게 처리하는지 궁금합니다.
답변 1
1
Case 1, Case 2는 UI와 관련된 처리가 적절하지 않은 곳에서 처리되고 있다고 보시면 됩니다.
'View는 화면을 그리는데 집중한다'는 템플릿 엔진을 사용하는 경우 데이터에 따라 다른 화면을 나타내는 것도 포함하고 있는 말이라고 생각할 수 있습니다.
우선 제가 설명을 너무 두서없이 했네요...
DB에 USE_YN의 값이 있을 경우
값이 Y일 경우 사용, 값이 N일 경우 미사용 으로 표현한다고 하였을 때 입니다.
Case 1. DB에서 동적 if 처리로 사용, 미사용 처리한다
Case2. Java에서 조회된 데이터를 if 처리로 사용, 미사용 처리한다
Case3. Thymeleaf에서 th:if 처리로 사용, 미사용을 처리한다.
위 3가지 케이스로 원하는 데이터를 표현 할 수 있을 것 같습니다.
Case1 또는 Case2를 사용하면 명칭을 사용, 미사용에서 다른 것으로 변경 시 Java 빌드와 서버 재기동을 해야합니다.
Case3번을 사용 시 단순 html 파일을 수정하는 것 이기 때문에 서버 재기동이 필요없습니다.
강의에서 View는 화면을 그리는데 집중한다 라고하면 실제 업무에서는 어떤 방식을 사용하는지 여쭤본 부분입니다.