전체 글 TIL(Today Ingwang Learned) 2023. 1. 1. 2022-12-31(실전 프로젝트) 오늘 한일 1. 게시글 CRUD 기능 구현 2. 댓글, 대댓글 CUD 기능 구현 3. 깃 허브 전략 4. 노션 정리 5. 그라운드 룰 정리 Error 에러 발생 원인 : URL 주소의 아이디 값과 입력받는 아이디 값이 일치하지 않아 발생한 오류 해결 : 값을 같게 만들어 해결 에러 Request method 'PUT' not supported\r\n\tat org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping. 원인 : url에 } 가 2개가 들어감..;; (오래 찾았는데 후) 해결 : url을 알맞게 수정함 에러 원인 스프링부트 2.6 으로 업그레이드 시 요청 경로를 ControllerHandler에 매칭시키기 위한 전략.. TIL(Today Ingwang Learned) 2022. 12. 31. 2022-12-30 (실전 프로젝트 시작) 실전 프로젝트 시작 팀 주제 : 식물 키우기 가이드 서비스 주제 선정 친환경 제품 플랫폼 무신사랩 > 친환경 패션, 라이프스타일 커머스 플랫폼 CQR 론칭 예정 https://www.etnews.com/20221014000151 식물 케어 서비스 / 식물 큐레이션 서비스 런드리고의 식물 버전 이랄까 병든 식물을 일정기간 관리 후 정상으로 만든 다음 다시 집에 보내주는~~ 여기에 추가적으로 판매나 정보 탐색 등의 기능이 더해져도 괜찮을 것 같다. 근데 있었네 쩝,, https://zdnet.co.kr/view/?no=20221104105215 식물 큐레이션 참고 : https://www.fuleaf.com/ 내가 키우고 싶은 환경에 맞는 식물을 필터링해서 찾을 수 있게 해주면 좋겠다. 근데 플립 자체가 간.. TIL(Today Ingwang Learned) 2022. 12. 29. TIL)2022-12-28(Spring) Spring boot Swagger 적용하기 //https://ik0501.tistory.com/entry/Spring-Swagger-%EB%84%88-%EB%AD%94%EB%8D%B0 Spring) Swagger? 너 뭔데? 어떻게 쓰는데? Swagger란? 서버로 요청되는 URL 리스트를 HTML화면으로 문서화 및 테스트를 할 수 있는 라이브러리 사용 이유 적용 하기가 매우 간단(Spring REST Docs 등의 문서화 도구와 달리 코드 몇 줄만 추가하면 ik0501.tistory.com swagger 적용 중 발생한 오류 발생 원인 Spring boot 2.6.2버전 이후 sping.mvc.pathmatch.matching-strategy 의 값이 ant_path_matcher -> path_pa.. Spring 2022. 12. 28. Spring) Swagger? 너 뭔데? 어떻게 쓰는데? Swagger란? 서버로 요청되는 URL 리스트를 HTML화면으로 문서화 및 테스트를 할 수 있는 라이브러리 사용 이유 적용 하기가 매우 간단(Spring REST Docs 등의 문서화 도구와 달리 코드 몇 줄만 추가하면 만들 수 있고 문서 화면에서 API를 바로 테스트 할 수 있음. 사용 하기 build.gradle에 의존성 추가 implementation 'io.springfox:springfox-swagger2:2.9.2' implementation 'io.springfox:springfox-swagger-ui:2.9.2' SwaggerConfig class 생성 @Configuration @EnableSwagger2 public class SwaggerConfig { private String v.. WIL(Weekend Ingwang Learned 2022. 12. 26. WIL(2022-12-19~2022-12-25) 미니프로젝트 ~ 클론 코딩 이번주 학습 요약 1. 미니 프로젝트 기획부터 구현까지 모두 팀원들과 같이 진행을 하였는데 기획 부분에서 api명세서나 와이어프레임 등을 세세하게 잘 짜놓아서 기능을 구현할때 몹시 편했음. 하지만 프론트 앤드와 처음 맞춰보는 과정에서 오류가 많이 발생했고 백앤드 개발만 먼저 끝났다고 해서 개발이 끝난게 아니라 프론트의 작업도 도와줬음 컨디션이 안좋아 프론트와 합치는 과정을 많이 참여하지 못한 것이 아쉬움 프로젝트 깃 허브 https://github.com/potato-marketplace potato-marketplace good potato good use. potato-marketplace has 2 repositories available. Follow their code on GitHub. git.. 카테고리 없음 2022. 12. 24. 템플릿 메서드 패턴 템플릿 메서드 패턴 -특정 작업을 처리하는 일부분을 서브 클래스로 캡슐화하여 전체적인 구조는 바꾸지 않으면서 특정 단계의 수행 내용 변경 디자인 패턴이라 말하기 민망할 정도로 객체지향 언어로 개발하다보면 무의식 적으로 사용하는 패턴 - 알고리즘의 구조를 메서드에 정의하고, 하위 클래스에서 알고리즘 구조의 변경없이 알고리즘을 재정의 하는 패턴 알고리즘이 단계별로 나누어 지거나 같은 역할을 하는 메서드가 여러곳에서 다른 형태로 사용이 필요한 경우 유용 추상클래스를 통해 템플릿을 제공하고 이를 상속받는 하위 클래스가 구체적인 로직 작성 > 추상클래스가 전체적인 골격 정의, 일부 로직은 하위 상속 클래스에서 구현 장단점 - 장점 1. 중복 코드를 줄임 2. 자식 클래스의 역할을 줄여 핵심 로직의 관리가 용이 3.. TIL(Today Ingwang Learned) 2022. 12. 24. TIL) 2022- 12-23(Spring, git) GIT git branch 생성됐다는 팀원의 말에 branch에 들어가봤는데 발생한 404 에러 경로를 찾을 수 없음 팀원의 도움으로 Organizations부터 처음부터 다시 접근 > 해결 Spring 클론코딩 시작 - 와이어프레임, api, erd 작성 https://www.notion.so/Sokdak-c016b8cb325d4460a0f1a92807082d59 개발자 커뮤니티 Sokdak 💻 A new tool for teams & individuals that blends everyday work apps into one. www.notion.so 카테고리 없음 2022. 12. 20. 결합도와 응집도 결합도란 서로다른 모듈간에 상호 의존하는 정도나 연관된 관계를 의미 모듈 - 소프릍웨어를 각 기능별로 나누는 것.// 각 모듈은 주어진 기능만을 독립적으로 수행 > 다른 클래스와 연관된 정도가 높다 > 해당 클래스를 변경하려면 연관된 클래스도 변경 > 클래스 재사용이 어려움 따라서 결합도가 낮을수록 좋음 자료 결합도 가장 낮은 결합도로 가장 좋은 형태 - 모듈끼리 단순히 파라미터를 통해 데이터를 주고받는 경우 public void preson(){ String name = student("ingwang") } public String student(Stringt name){ return name ; } 스탬프 결합도 두 모듈이 동일한 자료 구조를 참조하는 형태의 결합도 ㄴ 모듈 간의 인터페이스로 배열, .. TIL(Today Ingwang Learned) 2022. 12. 20. TIL)2022-12-19(Spring) Spring boot 게시글 좋아요 구현 1. 게시글 좋아요 레포지토리를 만들어 좋아요 데이터만 따로 저장 2. 좋아요 레포지토리에서 userId와 boardId 의 값과 일치하는 데이터가 있는 경우 > 좋아요가 된 상태 or 좋아요가 안된 상태 3. API를 하나로 만들어 한번 클릭시 좋아요, 한번더 클릭시 좋아요 취소가 되게 설계 1.service @Transactional public ResponseMsgDto boardLike(Long id, User user){ Board board = boardRepository.findById(id).orElseThrow( ()->new RequestException(ErrorCode.NULL_CONTENTS_400) ); if(boardLikeReposit.. TIL(Today Ingwang Learned) 2022. 12. 20. TIL)2022-12-17(Spring) Spring boot 대댓글 구현 1. 구현 고민 댓글 처럼 대댓글도 레포지토리를 만들어 따로 저장을 할것인가 댓글을 부모 댓글(댓글) 과 자식 댓글(대댓글) 로 나누어 저장하여 사용할 것인가 결과 - 대댓글을 따로 만들어 관리하면 관리할 부분이 많아지고 유지보수 하기 어려워짐 > 2번안으로 결정 2. 구현 @Builder @Getter @Entity @NoArgsConstructor @AllArgsConstructor public class Comment extends Timestamped{ @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; // 댓글 번호 @Column(nullable = false) private String .. WIL(Weekend Ingwang Learned 2022. 12. 19. WIL(2022-12-12~2022-12-18) Spring 심화 ~ 미니 프로젝트 이번주 학습 요약 1. Spring 심화 협업을 통해 작업 단위로 나누어 작업 후 합치는 작업 좋아요 기능과 좋아요 개수 반환 기능 추가 카테고리 기능, 회원 탈퇴 기능 추가 https://github.com/ingwang-kim/Spring_homework1 GitHub - ingwang-kim/Spring_homework1: 스프링 crud연습 스프링 crud연습. Contribute to ingwang-kim/Spring_homework1 development by creating an account on GitHub. github.com 2. CORS란? 브라우저에서 보안적인 이유로 corss-origin HTTP 요청들을 제한하는데 이로인해 서버의 동의가 필요하다. 만약 서버가 동의하면 브라우저.. TIL(Today Ingwang Learned) 2022. 12. 17. TIL)2022-12-16(JAVA,GIT) GIT git bash를 사용하여 git 사용하기 git 주요 명령어 https://jistol.github.io/vcs/2017/01/27/git-branch/ Git branch 주요 명령어 정리 jistol.github.io 브랜치 이름 main으로 생성 설정 git config --global init.defaultbranch main 브랜치 생성후 브랜치로 변경 git checkout -b 브랜치명 java final 키워드란? https://ik0501.tistory.com/entry/Java-final-%ED%82%A4%EC%9B%8C%EB%93%9C Java) final 키워드 final이란 final 키워드를 붙이면 시간이 지나도 처음 정의된 상태가 변하지 않는 것을 보장한다는 의미로 변.. 이전 1 2 3 4 5 6 7 ··· 16 다음 Calendar « 2025/08 » 일 월 화 수 목 금 토 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Tags 더보기 Archives Visits Today Yesterday