예제 프로젝트에서 양방향 연관관계 연습하다가 자주 만났던 에러,, ToString StackOverFlow,, toString 을 잘 살펴봤어야 했다..! 에러 발생 상황 양방향 관계를 가지는 Team 과 Member을 설계했음 양방향으로 설정한 이유 : Team 에서도 Member 을 조회하고 Member에서도 Team 을 조회하는 기능이 필요할 수 있기 때문 Team 과 Member 엔티티는 다음과 같다 @Entity data class Member( @Id val id: String, @ManyToOne var team: Team ) { override fun toString(): String { return "Member(id='$id', name='$name', email='$email', ph..
Error executing DDL "alter table score drop foreign key FKnap51mbove93yjb09idc9jic6" via JDBC Statement Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "테이블 이름" not found; SQL statement: 수정 전 application.properties spring.jpa.hibernate.ddl-auto = create or spring.jpa.hibernate.ddl-auto = create-drop ddl-auto 설정 : 애플리케이션 구동 시 JPA의 데이터베이스 초기화를 어떻게 할지 설정하는 프로퍼티 create : 기존 테이블 삭제 후 테이블을 생..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/AagAH/btrATcp5S49/33scY0bH4GfJWvKbT5tb41/img.png)
트랜잭션 데이터베이스의 상태를 바꾸는 하나의 작업 단위이다. 트랜잭션은 여러개의 쿼리(명령 및 연산)으로 구성되어있다. 트랜잭션이 필요한 이유 상황 : A가 B에게 돈을 이체하는 상황이다. A의 계좌에서 출금, B의 계좌에 입금이 하나의 작업 단위가 아닌 각각 이루어지는 상황이라고 가정해보자. 1. A는 B에게 5만원을 계좌 이체 요청을 한다. 2. 은행 시스템은 A의 계좌에서 5만원을 출금을 진행한다. 3. 은행은 B의 계좌에 5만원 입금처리를 한다. 각각의 프로세스가 전부 성공적으로 실행된다면 이체에 성공하게된다. 그러나 1,2번 프로세스는 성공하지만 3번 과정을 실패하게 된다면 A의 계좌에서 돈만 빠져나가는 상황이 발생하게 된다. 이런 데이터의 일관성을 유지하지 못하는 상황을 방지하기 위해 트랜잭션..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/EDiTP/btrxiX6eIKb/UjJMwfyoWMxBrDGDSoB0N1/img.png)
1. SQL 개념과 종류 1.1 SQL (Structured Query Language) 💡 Structured Query Languge (구조적 질의 언어) 의 약자로 관계형 데이터베이스 시스템에서 (RDBMS) 자료를 관리하고 처리하기 위한 언어1.2 SQL 종류 DDL (Data Definition Language, 데이터 정의 언어) 테이블을 정의하기 위해 사용하는 언어로 CREATE, ALTER, DROP 이 존재 DML (Data Manipulation Language, 데이터 조작 언어) 테이블에 데이터를 추가, 수정, 삭제, 조회를 하기 위해 사용하는 언어로 INSERT, UPDATE, DELETE, SELECT가 존재 DCL (Data Control Language, 데이터 제어 언어) ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/uNjjC/btrwtZPTDQs/uoSo0lhhcw1MpjbHkShnJ0/img.png)
객체지향 객체들이 메세지를 주고받는 협력 과정을 통해 소프트웨어를 완성시키는 과정을 객체지향이라고 한다. 객체에게 적절한 책임을 할당해야한다. 객체지향의 특징 여러 객체가 동일한 역할을 수행할 수 있다 역할은 대체 가능성을 의미한다 객체는 책임을 수행하는 방법을 자유롭게 선택할 수 있다 하나의 객체가 여러 역할을 수행할 수 있다 좋은 객체가 되는 조건 객체는 협력적이어야 한다. 객체는 다른 객체의 요청에 충실히 귀를 기울이고 적극적으로 도움을 요청할 수 있어야 한다. 모든걸 처리하려고 하는 객체는 성능이 좋지 못하다. 객체는 자율적이어야 한다. 객체는 자신의 원칙에 따라 업무를 수행하거나 통제해야 한다. 객체의 구성요소 객체는 구체적인 사물일 수도 있고 추상적인 개념일 수 있다. 상태 : 객체의 상태를 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/N1OAL/btrvQhYkO4P/lUCY7mOAu2u3k9oHAXboe0/img.png)
컬렉션 배열은 고정크기이고 효율적으로 삽입/삭제를 할 수 없다는 단점이 있어 컬렉션 프레임워크가 등장했다. 컬렉션은 객체를 저장하는 역할을 하고 객체의 효율적인 삽입/삭제/검색을 가능하게 한다. 컬렉션의 인터페이스와 구현체 인터페이스 분류 특징 구현클래스 Collection List - 순서 유지 - 중복 저장 - ArrayList, Vector - LinkedList Set - 순서 유지 X - 중복 저장 X - HashSet, TreeSet Map - 키와 값으로 저장 - 키는 중복 X - HashMap, Hashtable - TreeMap, Properties List 객체를 일렬로 늘어놓은 형태. 객체를 인덱스로 관리하여 자동으로 인덱스를 부여한다. ArrayList : 배열을 생성할 때에는 크기..
- Total
- Today
- Yesterday
- 파일업로드설정
- level0
- spring
- 네이버클라우드
- ci/cd
- Oracle
- TCP
- SpringSecurity
- CodeDeploy
- db
- EC2
- JPA
- 기술면접
- AWS
- 운영체제
- Til
- N+1
- ddl-auto
- SpringGraphQL
- 인덱스
- 람다식
- ORA-27125
- 프로그래머스
- 트랜잭션격리성
- nginx
- OS
- graphql
- Java
- 트랜잭션
- Travis CI
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |