전체 글694 [백준][C++] 17387번: 선분 교차 2 <218> 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. 17387번: 선분 교차 2 첫째 줄에 L1의 양 끝 점 x1, y1, x2, y2가, 둘째 줄에 L2의 양 끝 점 x3, y3, x4, y4가 주어진다. www.acmicpc.net 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 vector의 외적에 대한 지식이 없다면 다음글을 먼저 읽어보길 권장한다. https://degurii.tistory.com/47 [알고리즘] CCW로 세 점의 방향성 판별하기 0. 들어가기 전에 첫 알고리즘 포스트입니다. 이번에 쓸 내용은 CCW입니다. 원래는 기하 알고리즘들을 전반적으로 다루려고 했는데 생각보다 글이 길어져서 CCW만 .. Algorithm/백준 2022. 5. 9. [TIL] 일일 회고 2022/05/08 요즘 한 일 1. Spring Data JPA 완강 영한님의 Spring Data JPA를 완강하게 되었다. 약 5일 정도 걸린것 같다? 블로그에 하나하나 다 정리하면서 공부하다보니, 생각보다 시간이 많이 걸린것 같다. 하지만 블로그에 공부한것을 정리하면서 공부하면 그 효과가 배가 된다는 것 을 알기 때문에 도움이 많이 되는것같다. 2. Oauh2.0 로그인 구현하기 이전 반찬 서비스 구현때 하지못한 Oauth2.0 로그인을 구현하게 되었다. 다음과 같은 로직으로 진행하게 되었다. 처음에는 개념이 이해되지 않아 삽질을 좀 했는데... 다시 흐름을 잡으며, 여러 블로그, 유튜브의 영상을 보면서 직접 구현하다 보니 어찌 저찌 구현은 된것 같다 다행이다. 다만 코드가 많이 더러운... Spring Securi.. CODE SQUAD/회고록 2022. 5. 8. [Java] equals, hashCode 를 같이 구현하는 이유 이번글은 "Java에서 equals 와 hashCode를 왜 같이 구현할까?" 라는 의문에 대한 스스로의 답을 정리하는 글 입니다! 1. equals 만 재정의 할 경우 우선 설명에서 사용할 Item class를 살펴보자. public class Item { private String name; public Item(String name) { this.name = name; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Item item = (Item) o; return Objects.equals(name, item.. BackEnd/Java 2022. 5. 8. [JPA] 나머지 기능들 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 이번 시간에 배우는 나머지 기능들을 실무에서 자주 사용되지는 않는다. 다만 알아두면 필요한 순간에 가끔 사용할 수 있을 것 이다. Specifications은 JPA Criteria와 관련된 기술 이다. 문제는 실무에서는 JPA Criteria를 거의 안쓴다! 대신에 QueryDSL를 사용하기 때문이다. 또한 Query By Example 도 실무에서 직접 사용하기는 애매한 부분이 있는 기술들이다. 따라서 해당 강의 영상 부분에 대한 정리는 생략하도록 하겠습니다 ㅎㅎ 1. Projections " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 회원의 이름.. BackEnd/JPA 2022. 5. 7. [JPA] 스프링 데이터 JPA 분석 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 1. 스프링 데이터 JPA 구현체 분석 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 이번시간에는 Spring Data JPA가 어떻게 동작하는지 내부적인 구현체를 분석해보자! SimpleJpaRepository가 핵심 구현체 이다! @Repository @Transactional(readOnly = true) public class SimpleJpaRepository ... { @Transactional public S save(S entity) { if (entityInformation.isNew(entity)) { em.persist(entity.. BackEnd/JPA 2022. 5. 6. [JPA] 확장 기능 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 1. 사용자 정의 리포지토리 구현 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 이번 시간에는 실무에서 매우 중요한 내용이다. Spring Data JPA Repository는 인터페이스만 정의하고 구현체는 스프링이 자동 생성하게 된다. 문제는! Spring Data JPA가 제공하는 인터페이스에서 일부를 수정하려면 나머지 인터페이스 들도 모두 직접 구현해야 하기 때문에 현실적이지 못하다. 또한 다른 기술들, 예를 들어 MyBatis, QueryDsl 과 같은 기능도 함께 사용하고 싶다면? 다양한 이유로 인터페이스의 메서드를 직접 구현하고 싶다면 어떻.. BackEnd/JPA 2022. 5. 6. [TIL] 일일 회고 2022/05/04 요즘 한 일 1. Spring Data JPA 수강 요즘 코드스쿼드가 1주일 방학기간이라 그동안 듣지 못하고 있었던 Spring Data JPA 강의를 수강하기 시작했다. 어느덧 한 65%정도 듣게된 것 같다. 강의를 들으면서 정리를 하는 스타일이기 때문에 다음과 같이 정리를 하게 되었다. https://blogshine.tistory.com/387 HTML 삽입 미리보" data-og-host="blogshine.tistory.com" data-og-source-url="https://blogshine.tistory.com/387" data-og-url="https://blogshine.tistory.com/387" data-og-image="https://scrap.kakaocdn.net/dn/b2.. CODE SQUAD/회고록 2022. 5. 4. [JPA] 쿼리 메소드 기능 - 4 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 9. 벌크성 수정 쿼리 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 단건의 Entity에 대한 수정이 아닌, 예를 들어 "모든 직원의 연봉을 10% 인상하라"와 같은 수정을 해야할 때 벌크성 수정 쿼리가 필요하다! 우선 순수 JPA를 사용하는 코드부터 살펴보자. @Repository public class MemberJpaRepository { @PersistenceContext private EntityManager em; public int bulkAgePlus(int age) { return em.createQuery("update Member.. BackEnd/JPA 2022. 5. 4. [JPA] 쿼리 메소드 기능 - 3 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 7. 순수 JPA 페이징과 정렬 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 이번 시간에는 순수하게 JPA를 사용해 페이징 처리를 해보고, 다음번에 Spring Data JPA를 통해 페이징 처리를 하자. 다음 조건에 맞도록 페이징 처리를 해보자. 검색 조건: 나이가 10살 정렬 조건: 이름으로 내림차순 페이징 조건: 첫 번째 페이지, 페이지당 보여줄 데이터는 3건 우선 Repository 코드는 다음과 같다. @Repository public class MemberJpaRepository { @PersistenceContext private Ent.. BackEnd/JPA 2022. 5. 4. [JPA] 쿼리 메소드 기능 - 2 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 4. @Query, 값, DTO 조회하기 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 이전시간에는 Entity를 조회하는 방식에 대하여 알아보았다. 이번시간에는 값을 찾아오는 법을 살펴보자. 1) 단순 값 조회하기 예를 들어 사용자의 이름 목록을 받아오고 싶다면 어떻게 해야할까? 이전과 동일하게 @Query를 사용하면 된다. public interface MemberRepository extends JpaRepository { @Query("select m.username from Member m") List findUsernameList(); } .. BackEnd/JPA 2022. 5. 4. [JPA] 쿼리 메소드 기능 - 1 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. Spring Data JPA는 공통적인 기능이 아닌, 도메인에 특화된 기능을 지원하기 위해 쿼리 메소드를 지원합니다! 쿼리 메소드 기능 3가지 - 메소드 이름으로 쿼리 생성 - 메소드 이름으로 JPA NamedQuery 호출 - @Query 어노테이션을 사용해서 repository interface에 쿼리 직접 정의 1. 메소드 이름으로 쿼리 생성 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1-1. 순수 JPA 리포지토리 (MemberJpaRepository) 우선 직접 JPQL로 구현한 코드는 다음과 같다. 특정 username과 age 를 초과.. BackEnd/JPA 2022. 5. 3. [JPA] 공통 인터페이스 기능 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 이번 시간에는 우선 순수한 JPA기반의 repository를 만들어 본 후, 이를 점차 Spring Data JPA를 사용하도록 변경할 것 이다. 1. 순수 JPA 기반 리포지토리 만들기 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 Team Repository의 코드는 다음과 같다. @Repository public class TeamRepository { @PersistenceContext private EntityManager em; public Team save(Team team) { em.persist(team); return team;.. BackEnd/JPA 2022. 5. 3. 이전 1 ··· 23 24 25 26 27 28 29 ··· 58 다음