본문 바로가기

전체 글35

[JPA] 영속성 컨텍스트 JPA는 영속성 컨텍스트는 엔티티(Entity)를 관리한다. 이런 엔티티가 뭐냐면 데이터베이스와 1대 1로 매칭되는 일종의 개념이라고 생각해볼 수 있다. 이러한 개념은 객체 지향 프로그래밍의 객체에 매핑이 되게 된다. 이러한 엔티티를 관리하는 것이 영속성 컨텍스트인데 엔티티는 이러한 영속성 컨텍스트에 의해 여러 상태를 가질 수 있다. New : 엔티티가 새롭게 생성된 상태이다. 이 상태는 영속성 컨텍스트가 이 엔티티를 인지하고 있지 않으므로, 실제 데이터베이스에 반영되지 않는다. 이러한 엔티티를 영속성 컨텍스트에게 관리 받게 하려면 persist() 함수를 통해 엔티티를 관리하도록 만들어야 한다. Managed : 영속성 컨텍스트에 의해 관리되고 있는 엔티티의 상태를 말한다. 이는 곧 엔티티의 정보가 바.. 2021. 4. 19.
[JPA] JPA에 관해서 jpa란 무엇일까? 위키피디아의 의하면 jpa는 "Java Persistence API" 라고 한다. 뜻으로만 보면 잘 모르겠는데 "persistence"에 의미를 잘 알아야할 것 같다. persistence는 "고집", 또는 "없어지지 않고 오래 지속됨" 이라고 한다. 결국 자바의 어떠한 것을 영원히 유지하게 해준다는 뜻인데, 이는 데이터베이스와의 관계를 생각해보면 좋다. 데이터베이스의 자료들은 변경이 있지 않는 한 영원히 간다고 볼 수 있다. 즉, 데이터베이스와 연관이 있는 API이며, 그 뜻 그대로 데이터베이스 자료를 다루는 API라고 볼 수 있다. 이런 JPA 자체는 인터페이스들의 집합으로서, 따로 구현되어 있지 않다. 이런 인터페이스를 통해 구현한 구현체들이 있는데 대표적으로 hibernate,.. 2021. 4. 15.
[일상] 2020년 하반기 회고 2020년은 내 인생에 있어서 가장 다사다난한 해가 아닐까 생각된다. 결과적으로 2020년 취업은 모두 실패로 돌아갔다. 2020년 4월쯤 일본 취업이 망하고 (코로나로 인해 내정 취소가 되었다) 갑작스레 한국 취업을 준비하게 되었다. 사실 컴퓨터학과를 나온 사람으로서 CS 스킬에 대한 지식이나 이해도가 많이 낮았던 것은 사실이다. 그런데 갑자기 취업을 다시 준비해야한다니 머리가 백지가 되는 것 마냥 아무것도 할 수 없었다. 당장 필수적인 코딩테스트부터 절망적이었고 서류합격하는 것부터가 너무나 힘들었다... 한국 취업 시장이 원래부터 헬이라고 들어는 왔지만 직접 체감해보니 엄청 무겁게 다가왔던걸까... 하지만 그 중에서도 나를 가장 힘들게 했던 건, 의지할 수 있는 기반이 없었던 것이 가장 큰 게 아닐까.. 2021. 1. 8.
[우아한 테크코스] 3기 프리코스 2주차 후기 1주차 우테코 후기를 올렸는데, 내용이 너무 부실하고 배웠던 것을 너무 적게 표현한 것 같아 지금부터는 조금 더 자세하게 쓸 예정이다. 이번 우테코 2주차 미션은 "자동차 경주 게임". 간단하게 설명하자면 자동차 이름을 정하고, 랜덤 함수를 통해 전진할 것인지, 전진하지 않을 것인지에 대해 무작위적으로 선택하고, 정해주는 횟수에 걸쳐 자동차들을 움직인다. 이 후, 각자 움직인 거리를 보고 승자를 결정하게 된다. 승자는 한 명 또는 그 이상이 될 수 있다. (같은 거리를 이동했을 경우) 문제 자체는 그렇게 어려운 편은 아니지만, 기능 요구 사항이 항상 도전적이게 만든다. 자바 코드 컨벤션을 지키면서 프로그래밍한다. 들여쓰기 depth를 3이 넘지 않도록 구현한다. 3항 연산자를 쓰지 않는다. 함수(또는 메.. 2020. 12. 10.