1️⃣ Git pull 오류 오늘 작업을 시작하기 전, 지금까지 각자 브랜치에서 푸쉬한 코드들을 merge를 하고 pull을 하는 과정에서 오류가 발생했다. 오류1) pull하고 sts 켜자마자 나온 오류 => 결국 해결을 못했다. 오류2) pull 해온 파일 자체도 안떠서 import를 해왔더니 발생한 오류 jsp파일들에 죄다 오류가 떠있어 확인해보니 jstl 태그립에서 오류가 뜨는 거였음…이것도 해결을 못했다. 이것저것 다 구글링 해봤지만 아직까지도 왜 그랬는지 모를…😥 오류3) 결국 파일을 다 삭제하고 다시 깨끗한 상태에서 pull을 해왔더니 이번엔 다 정상적으로 실행됐다. 그러나 run을 해보니 서버 오류 발생. ❔ 원인 Tomcat config가 꼬여버려서 발생한다고 한다. 💡 해결방법 기존 서..
1️⃣ 회원 정보 확인 jsp (UI 구현) mypage.jsp 안녕하세요, ${login.name}님! 마이페이지 회원 정보 수정 일정보관함 좋아요 목록 내가 쓴 글 보기 2️⃣ 회원 정보 확인 로직 수정 및 보완 MyPageController.java MyPageMapper.xml MyPageDAO.java MyPageService MyPageServiceImpl memberInfo.jsp 결과 3️⃣ 회원 정보 수정 MyPageController.java MyPageMapper.xml MyPageDAO.java MyPageService.java MyPageServiceImpl.java 4️⃣ 회원 정보 수정 JSP (UI 구현) memberUpdate.jsp 결과 로그인 후에 할 수 있는 작업들이라..
1️⃣ 브랜치 생성 저번주 포스팅에 기록했던 것 처럼 기능별로 브랜치를 생성해 푸쉬를 하기로 했기 때문에 featureMyPage 브랜치를 생성했다. 2️⃣ 마이페이지 화면 구상) 마이페이지(mypage.jsp) > 회원 정보(memberInfo.jsp)에서 수정하기 버튼 클릭하면 > 회원 정보 수정(memberUpdate.jsp) 저장 버튼 클릭 > 회원정보에 저장되고, 마이페이지 화면으로 돌아감 취소 버튼 클릭 > 취소되고, 마이페이지 화면으로 돌아감 ✅ MyPageController.java package com.controller; import java.util.HashMap; import java.util.List; import javax.servlet.http.HttpSession; impor..
DB 서버 공유를 위한 네이버 클라우드 플랫폼을 사용했다. Mysql을 배워서 사용할지 라이선스 비용이 들지만 오라클DB를 사용할지 두가지 선택권이 있었는데 팀원들과의 회의 끝에 후자를 선택했다. DB 서버 공유 시 필요한 조건 • 공인 IP(= Public IP) 또는 Public DNS(Public 도메인) 정보 필수 • 서버 Port 번호 - default Port(포트 번호 변경 안 한 경우) ‣ 오라클: 1521 ‣ MySQL: 3306 ‣ MongoDB: 27017 • 사용자 & 패스워드 • (옵션) DB 버전 네이버 클라우드 플랫폼이란? 네이버 클라우드 플랫폼은 네이버가 제공하는 클라우드 컴퓨팅 서비스로, 기업 및 개발자들이 애플리케이션을 개발하고 운영하기 위한 다양한 클라우드 기능을 제공합..
DB설계 과정도 순탄치 않았다.. 툴을 처음 사용하다보니 우왕좌왕 😂 예를 들어 논리적 데이터 모델링을 잘 해놓지않아 중복되고 불필요한 데이터를 뽑아내는 상황이 발생했다. 우리는 중간에 다시 돌아가 개념적 데이터 모델링 단계부터 다시 시작했고, entity(개체), attribute(속성), relation(관계)을 간단하게 정의하는 단계를 거쳤다. 이전과 같은 실수를 또 하지않기 위해 정규화 과정을 생각하며 논리적 데이터 모델링을 거쳤고, 결과적으로 DB툴을 이용해 정리하였다. ERD CLOUD를 사용해 작성한 모습 먼저 회원정보를 나타내는 Member 테이블을 보자. 회원 관리에 필요한 기본적인 컬럼들을 작성했고, 사용자들마다 고유의 값을 가지는 아이디를 PK로 지정했다. 프로필 이미지를 제외하고는 ..
1️⃣ 기능의 우선순위 결정과 역할 재분담 멘토님들의 피드백을 토대로 코어기능과 부수적인 기능을 분류하여 우선순위를 먼저 결정하기로 했다. 반드시 필요한 기능, 시간이 남으면 부수적으로 구현해도 될 기능을 나누어보니 우리가 짧은 시간 안에 무엇을 중점적으로 해야할지 보였다. 그 후엔 역할 재분담도 필요했다. 아무래도 백엔드 과정이다보니 프론트단을 한 명이 다 책임지게 되는건 불리한거같아 프론트단은 나누어서 멀티 구현하기로 했고, 나머지 백엔드 기능을 재분담하게 되었다. 2️⃣ UX/UI 와이어프레임 구축 현업에서도 많이 쓴다는 FIGMA 툴을 주말동안 공부해와 UX/UI를 구상했다. 팀원 모두가 처음 써보는거라 우여곡절이 있었지만 각 페이지마다 나름 디테일하게 구상을 했다. 가장 중요하게 생각한 것은 역..
아침 일찍 정보처리기사 실기 시험을 보고와서 오후엔 팀회의와 멘토님들과의 피드백 시간을 가졌다. 우리가 미처 생각지도 못했던 부분들을 콕콕 찝어내주셨고 프로젝트의 방향성을 다시 생각해보게 되었다. 내가 생각했던 대로 두번째 주제인 안심귀갓길은 웹보단 앱 어플리케이션의 성격이 더 맞을 거 같아 적합하지 않아보인다는 피드백을 받았다. 첫번째 주제의 프로젝트는 기능을 우선순위별로 분류할 필요성이 있다고 하셨다. 우리는 피드백에 따라 먼저 코어기능 위주로 다시 작성을 해보고, 그 이후 유용한 부가기능을 작성하여 우선순위대로 정리해보기로 했다. 사용자 입장에서 기능들의 필요성을 다시 한번 생각해봐야 한다는 피드백도 받았다. 우리가 구현하고싶은 주제에서 메신저 기능이 왜 필요한지? 굳이 필요한지? 해당 서비스를 제..
오늘은 팀의 업무를 효율적으로 관리하고 진행하기 위해 기획안을 바탕으로 요구분석정의서와 WBS를 작성하였다. 요구분석정의서 사용자 입장에서 필요한 기능을 생각해보며 작성해보니 추상적이었던 기능들이 구체화되는 느낌을 받았다. 당연한 소리지만 아! 이래서 쓰는구나 싶었던… 프로젝트 기간 동안 하나부터 열까지 정말 많이 배울 것 같다는 생각이 또 한번 들었던 순간이었다. 먼저 크게 카테고리별로 분류를 한 뒤 세세한 기능까지 작성해보았다. 회원관리/로그인 - 회원가입, 로그인, 로그아웃, 아이디 찾기, 비밀번호 찾기 마이페이지 - 나의 정보 보기, 정보 수정, 내가 쓴 글 보기, 여행 일정 관리, 공유 일정, 찜 목록 확인 여행 일정 만들기 - 일정 만들기 페이지, 숙박/관광 일정 추가, 여행 예산 관리/추가,..
✅ 기획안 아직은 너무나 추상적인 주제들이기 때문에 조금 더 구체화시켜 바라보고자 기획안을 작성하기로 했다. 개발 도구는 어떤 것을 사용할까? 우리는 대부분 JAVA를 기반으로 공부하였고, 웹에 필요한 HTML, CSS, JSP, JSTL, JQuery, Servlet 등도 익숙한 상태였다. 개발툴은 Spirng Framework를 사용하기로 했다. JAVA 1.8.0 (eclipse) Apache Tomcat 8.5 MyBatis 3.5.10 ORACLE 11g DB HTML5, CSS3, JavaScript, JSP, Jquery Spring framework git, github 소스코드 형상 관리 현업에서 쓰이는 형상관리도구인 GIT을 사용하기로 했다. 하지만 GIT을 통해 협업하는 기능은 모든 ..