일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ArrayList
- aop
- HTML
- github
- Java
- wil
- GIT
- 코딩공부
- 회고
- 정렬 알고리즘(sort algorithm)
- 메서드
- 이진 탐색(binary search)
- 프로그래머스
- cs 공부)준비
- Grafana
- 코딩테스트 준비
- 개발자 취업
- 자료구조
- 배열
- 99클럽
- 코딩문제
- Entity
- 코딩
- 면접(java
- Til
- Spring
- css
- 항해99
- CS
- 자바
- Today
- Total
목록전체 글 (174)
hayu's 개발 일지
엔티티(Entity) 란? 데이터 베이스(DB)의 테이블을 나타내는 클래스이다. 이 클래스는 JPA(Java Persistence API)를 사용하여 데이터 베이스에 저장되고 관리된다. 추가 내용은 이 블로그에서 참고하자 : https://yuha00e.tistory.com/entry/TIL240308-스프링-부트와-AWS로-혼자-구현하는-웹서비스-3장-JPA 엔티티(Entity) 연관관계 관계형 데이터 베이스는 테이블 간 Foreign Key(외래키)로 연관관계를 맺고 JOIN을 통해 테이블을 조회한다. 연관관계에서는 생각해야할 부분이 몇 가지 존재한다. 방향: 단방향, 양방향이 있다. 한쪽만 참조하면 단방향, 서로 참조하면 양방향이라고 한다. 다중성: 일대일, 일대다, 다대일, 다대다 연관관계의 주인..
Entity란? Entity 클래스는 실제 DB 테이블과 매핑되는 클래스로 데이터 베이스의 테이블에 존재하는 컬럼들을 필드로 가지는 객체이다. (엔티티 클래스는 실제 DB의 테이블과 1:1 매핑된다.) Entity는 데이터 베이스 영속성의 목적으로 사용되는 객체이기 때문에 요청(Request)이나 응답(Response)을 전달하는 클래스로 사용하는 것은 좋지 않다. Entity에서는 Setter 메서드의 사용을 지양해야 한다. 변경되지 않는 인스턴스에 대해서도 Setter로 접근이 가능해지기 때문에 객체의 일관성, 안전성을 보장하기 힘들어진다.(Setter 대신 생성자나 Builder를 사용하는 것이 좋다.) Dto란? 계층(Layer) 간 데이터 교환이 이루어질 수 있도록 하는 객체이다.(직렬화에도 사..
인텔리제이에서 브랜치에서 브랜치 만들기(브랜치 소속이 됨.) - 인텔리제이에서 브랜치에서 브랜치 만들기(브랜치 소속이 됨.) - 원하는 브랜치 우클릭 → New Branch from ‘브랜치 이름’ merge하는 법 - 원하는 브랜치로 checkout을 해서 이동한다. - 상단창에서 Git을 찾고 merge를 누른가. - merge 할 브랜치의 이름을 선택한다.
CORS란? CORS(Cross-Origin Resource Sharing)는 출처가 다른 자원들을 공유한다는 뜻으로, 한 출처에 있는 자원에서 다른 출처에 있는 자원에 접근하도록 하는 개념이다.(다른 출처의 리소스 공유에 대한 허용, 비허용 정책이다.) 교차되는 자원들의 공유라는 뜻도 있다. 다른 출처에 있는 자원을 요청한다고 하면, 이를 교차 출처 요청이라고 부른다. HTTP 요청은 기본적으로 교차 출처 HTTP( Cross-Site HTTP Requests) 가 가능하다. 교차 출처 HTTP는 프로토콜, 호스트명, 포트가 같아야한다. 그러나 Front 와 Back 사이에 도메인이 달라지는 경우가 많은데 이 경우에 CORS 허용 정책이 필요하다. 다른 출처 요청 , , , 등이 웹에 등장하면서 페이지..
문제 엔티티 연관매핑 후 코드 실행했는데 테이블에 연관된 엔티티의 아이디값이 들어가지 않고 null이 나오는 문제. 원인 아직 모르겠다. 엔티티 연관관계도 확인했는데 서비스 코드에서 choice에 게임 아이디 주입 코드가 필요한 것 같다. /* * 밸런스 게임 생성*/ @Transactional public GameResponseDto createGame(GameRequestDto gameRequestDto, UserDetails userDetails) { User user = userRepository.findByEmail(userDetails.getUsername()) .orElseThrow(()->new CustomApiException("사용자를 찾을 수 없습니다.")); /* * 선택지 생성*/..
테스트 코드 TDD(test-driven development) 테스트가 주도하는 개발을 말한다. (선 테스트 → 후 개발) 테스트 코드를 먼저 작성하는 것 부터 시작한다. 항상 실패하는 테스트 작성 → 테스트가 통과하는 프로덕션 코드 작성 → 테스트가 통과하면 코드를 리팩토링 TDD의 장점 객체 지향적인 코드 개발: 의존성과 종속성이 낮은 모듈로 조합된 소프트웨어 개발 가능 설계 수정시간의 단축: 테스트 코드를 먼저 작성하기 때문에 설계의 구조적 문제를 바로 찾아낼 수 있다. 유지보수(리펙토링)의 용이성: 추후 문제가 발생했을 때 모듈별로 테스트 진행하면 문제 지점을 찾기 쉽다. TDD의 단점 생산성 저하: 예외상황이 발생할 것이 예측되는 상황에도 테스트 코드 작성하고 통과 코드를 작성하는 것은 비효율..