국비지원을 하면서 첫 팀프로젝트 과제가 주어졌었습니다.
jsp를 이용한 프로젝트였는데, 저희는 마켓컬리를 대상으로한 클론 코딩을 했습니다.
각 상품의 가격와 이름을 db에서 가져오게끔 구현했습니다.
market front controller에서 prod detail view action을 호출하고
prod detail view action 에서 productID값을 호출해서 값을 가져옵니다.
userID값과 productID 값을 비동기식으로 zzim함수를 통해 디비버에 있는 tbl_zzim으로 넘기게 되는데,
!만약 여기서 userid 값이 비어있다면 로그인이 필요하다고 뜨게 되며 리턴하게 됩니다.
로그인이 되어있는 상태에서 빈하트를 누르게 되면 POST메소드를 통해 빈 하트가 색이 채워지게 되고 "찜하기 성공" 메시지가 뜨게 됩니다.
또 한 번 누르게 되면 다시 POST메소드를 통해 찜취소 성공 메시지가 뜨면서
찜 취소가 됩니다.
수량에 따라 가격이 실시간으로 바뀌는 기능을 구현하는 것이 어렵고 힘들었습니다..
init 함수로 초기화를 해줘야 하는 걸 몰라서 찾느라 힘들었습니다..
👉 이 프로젝트를 진행하면서 전체적인 프론트 작업은 수월하게 진행됐지만, 처음 겪어보는 기능들도 많았습니다. 또한, 프로젝트를 진행하면서 새롭게 알게 되는 기능들도 있었습니다.
어려웠던 부분은 수량을 늘리면 가격도 실시간으로 올라가는 것을 구현하는 것이었습니다.
수량과 가격을 동시에 변경하는 기능을 구현하는 것에 어려움을 느끼면서 구글링을 통해 검색하여 다양한 자료와 코드를 찾아보았습니다. 이 과정에서 init() 함수를 처음 알게 되었는데, 이 함수가 초기화 작업을 수행하는 역할을 한다는 걸 알게 되었습니다.
이전에는 수량과 가격 간의 연결을 구현하는 데에 있어서 초기화 단계가 없었기 때문에 구현하는 데 어려움을 겪었습니다.
하지만 구글링을 통해 다양한 자료와 예제를 찾아보는 과정에서 init() 함수를 알게 되었고, 이를 활용하여 초기화 작업을 통해 기능을 수행할 수 있게 되었습니다.
이러한 경험을 통해 새로운 함수나 개념을 습득하고 적용하는 능력을 키울 수 있었습니다. 프로젝트를 통해 계속해서 학습하고 성장하는 과정에서 새로운 기술과 개념을 습득하는 자세를 가지게 되었습니다.