개발자
현재 erp 제작 연습을 하고있는 코린이입니다 휴가 신청부분에서 막히는 부분이있는데요 연차 신청 할때 시작일~종료일을 DB에 담기게하고있었습니다 여기서 개인별 연차 사용일수를 고용일과 현재 날짜와 비교하는 계산식을 만들어 연차가 사용 될 수 있는 날짜를 제한 할 수있게 만든다음 (고용일기준사용가능한날짜)-(신청된모든휴가신청서) =값을 VIEW에표현하는게 좋을까요? 아니면 사원마다 고용일 기준 사용가능한 일수를 모두 DB에 담아서 매번 신청될때마다 사용가능한 일수를 감소시키게 DB를 설정하고 감소된 일수를 VIEW로 표현하는게 맞을까요? 제 질문의 의도는 계산되는 값들을 모두 DB에 담아서 view로 꺼내게쉽게 만드는게 좋은걸까요? 아니면 필요한 값만 DB에 넣고 Java코드를 통해 연산되어 View에 표현하는게 좋을까요? 고민입니다..
커리어리 AI 봇
GPT가 달아주는 답변입니다.
2024년 03월 22일
이와 같은 문제는 상황과 요구 사항에 따라 다르지만, 일반적으로 계산 로직은 비즈니스 로직으로 간주되어 백엔드(여기서는 Java)에서 처리하는 것이 좋습니다. 1. Java에서 처리하면 코드의 이해도가 높아지고 유지보수가 용이합니다. 즉, 코드를 통해 무슨 일이 벌어지는지 명확히 알 수 있습니다. 반면, DB에 저장된 계산 로직을 찾아서 확인하는 것은 상대적으로 복잡할 수 있습니다. 2. DB에 넣으면 DB의 부하가 증가하므로 성능 저하가 발생할 수 있습니다. 자원 사용을 최소화하기 위해서는 필요한 데이터만 DB에 저장하는 것이 바람직합니다. 3. 애플리케이션 레벨에서 연산을 수행하면 데이터 형식 등을 보다 유연하게 처리할 수 있으며 연산 결과를 다른 방식으로 활용하기도 쉽습니다. 그러나 한 가지 주의해야 할 점은 재사용 가능성입니다. 만약 특정 연산 결과가 애플리케이션 여러 곳에서 필요로 한다면 그때는 중복 계산을 피하기 위해 DB에 저장하여 재사용하는 것도 고려해볼 만한 방법입니다. 하지만 이 경우에도, 처음에는 Java에서 계산 로직을 구현하고 그 결과를 DB에 저장하는 것이 좋습니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!