전체 글 280

Trello 이용하기 , 칸반 보드 장점

칸반 보드는 일반적으로 다음과 같은 컬럼으로 구성 Backlog (TO-DO, ICE BOX) 프로젝트를 시작하기 전에 작업에 해당되는 카드를 만들어놓는 곳이에요. In Progress 프로젝트가 시작이 되면 작업자들은 우선순위 및 여러 사항을 고려하여 Backlog의 카드들을 In Progress 컬럼으로 카드를 옮기고 작업을 시작해요. Done In Progress 컬럼에 있는 카드 중 작업자가 작업을 완료하면 해당 카드를 Done 컬럼으로 카드를 옮기고 작업을 완료했음을 공표해요. 경우에 따라서는, 특정 카드에 의존성이 있던 다른 작업자들은 특정 카드가 Done 컬럼으로 옮겨지는 것을 확인하면 본인이 작업할 카드를 In Progress 컬럼에 그제서야 옮겨놓고 작업을 시작할 수 있어요. 컬럼 구성만..

Basic 2023.08.07

230725 TIL

오늘 할 일 (계획) 하루 계획 오전 09:00 ~ 10:00 : 주특기 플러스 주차 팀 발제 10:00 ~ 10:30 : 7조 자기소개 및 TMI 등 작성, 친해지기 10:30 ~ 14:00 : 주특기 숙련주차 강의 듣기 집중 코딩 14:00 ~ 18:00 lv3 과제 리뷰 시청 및 코드 분석 (14:00~15:30) lv3 리뷰 lv4 과제 수행 [ ] lv4 과제 수행 (16:00~18:00) 팀원과 코드 리뷰 / 튜터님께 물어볼 내용 정리 저녁 19:00 ~ 20:00 : lv4 과제 수행 20:00 ~ 20:30 : lv4 과제 수행 20:30 ~ 21:00 : 마무리 회고 진행 오늘 한 일 (회고) 주특기 플러스 주차 발제 듣기 7조 첫 만남, TMI 등 작성 후 팀 규칙,계획 정하기 lv3 ..

TIL 2023.07.26

오팀장 KPT

오팀장 KPT 한 일 프로젝트 명 : 트위터의 대체재로 떠오르고 있는 Threads 의 대체재로 떠오르고 있는 오팀장 필수 구현 : 회원가입, 로그인/로그아웃, 게시글, 댓글 CRUD 추가 구현 : SNS 인증 로그인, 댓글 좋아요, 팔로워 팔로잉 기능, 백오피스 기능 Keep 주기적으로 상황공유를 하며 의사소통을 하며 문제를 해결하고 프로젝트를 진행하기 위해 노력했던 점 마감기한을 지키기 위해 어느 한 분도 빠지지않고 마지막까지 열심히 노력했던 점 Merge를 할 때 함께 했던 것 각자 branch를 만들어 작업했던 것 Problem 문제1 : 엔티티 간의 연관관계 설정 원인 : Post의 경우 Comment를 일대 다 관계로 구성되어 있었고, Post를 삭제하면 댓글은 모두 삭제하는 CascadeTy..

KPT 2023.07.25

Java ) Lombok ) 공식 문서를 통해 알아보는 @NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor + 사용시 주의사항

Spring과 Lombok을 사용한다면 꼭 알고 있어야 하는 생성자 관련 어노테이션들이다. 아래 Lombok 공식 문서와 블로그를 참고로 글을 작성하였다. - @NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor - Lombok 사용상 주의점(Pitfall) Overview @NoArgsConsructor, @RequiredArgsConstructor, @AllArgsConstructor, 이 3형제는 이름에서부터 어떤 역할을 하는 어노테이션들인지 대략 짐작이 간다. 일단 3형제 뒤에 붙은 Constructor라는 단어로부터, 이 3형제는 프로그래머 대신 생성자를 만들어주는 역할을 한다는 것을 유추할 수 있다. 그러니까, 객체 내부에 선언되..

Java 기초 문법 2023.07.20

Spring ) Blacklist

1.JwtUtil.java // 토큰 블랙리스트 : 사용된 토큰을 사용하지 못하게 저장하여 관리함 @Autowired private TokenBlacklistRepository tokenBlacklistRepository; // 블랙리스트에 토큰이 있는지 확인, 존재하면 != null 즉 true 반환 public boolean isTokenBlacklisted(String tokenValue) { TokenBlacklist tokenBlacklist = tokenBlacklistRepository.findByToken(tokenValue).orElse(null); return tokenBlacklist != null; } 2.JwtAuthorizationFilter @Override protected ..

Spring 2023.07.19

Spring ) Spring Security 구현 순서

0. security 추가 1. Config > WebSecurityConfig 생성, 설정 우리가 직접 Filter를 구현해서 URL 요청에 따른 인가를 설정한다면 코드가 매우 복잡해지고 유지보수 비용이 많이 들 수 있습니다. Spring Security를 사용하면 이러한 인가 처리가 굉장히 편해집니다. 2. UserDetailsServiceImpl 구현 3. UserDetails 구현 UserDetailsService와 UserDetails를 직접 구현해서 사용하게 되면 Security의 default 로그인 기능을 사용하지 않겠다는 설정이 되어 Security의 password를 더 이상 제공하지 않는 것을 확인할 수 있습니다. POST "/api/user/login" 을 로그인 인증 URL로 설정..

Spring 2023.07.19

Spring ) Java Spring @Override annotation 이란? @Override 사용법

Java Spring 프레임워크에서 @Override 어노테이션은 메서드 재정의(Overriding)를 명시적으로 선언하는 데 사용됩니다. 메서드 재정의는 상위 클래스(부모 클래스)에 이미 정의된 메서드를 하위 클래스(자식 클래스)에서 다시 정의하여 동일한 메서드 시그니처(메서드 이름, 매개변수, 반환 타입)를 가진 새로운 구현을 제공하는 것을 말합니다. Java에서는 상속을 통해 클래스 계층 구조를 형성할 수 있습니다. 상위 클래스에는 기본적인 동작이 정의되어 있으며, 하위 클래스는 상위 클래스의 메서드를 재정의하여 필요한 동작을 변경하거나 추가할 수 있습니다. @Override 어노테이션은 다음과 같은 목적을 가지고 사용됩니다: 문법적 오류 방지: 상위 클래스에 해당 메서드가 존재하지 않거나 시그니처..

Spring 2023.07.19

Spring ) @Id, @Column, @GeneratedValue, @Entity, @Table

JPA로 코드를 작성하며 자주 나오고 가장 기본적인 어노테이션들이다. 따라서 이 어노테이션들을 정리하려고 한다. 👀 @Entity @Entity 어노테이션은 테이블과 매핑을 해주는 어노테이션으로, @Entity가 붙은 클래스는 JPA가 관리한다. @Entity 어노테이션의 속성에는 name이 있다. name의 속성에서는 JPA에서 사용할 엔티티 이름을 지정한다. 보통은 기본값인 클래스명을 사용한다. 주의 사항 - 기본 생성자는 필수이다. - JPA가 엔티티 객체 생성 시 기본 생성자를 이용한다. final 클래스, enum, interface, inner class에는 사용 불가 final 필드 불가 📖 @Table 엔티티와 매핑할 테이블을 지정한다. 생략 시 매핑한 엔티티 이름을 테이블명으로 사용한다...

Spring 2023.07.14