전체 글 (118) 썸네일형 리스트형 Crawling 구현 1 Crawling 서버를 구현하기 위해 crawling 기능을 구현하고자 한다. 크롤링 할 사이트는 https://dev-event.vercel.app/events Dev Event - 개발자 행사는 모두 데브이벤트 웹에서!개발자를 위한 {웨비나, 컨퍼런스, 해커톤, 네트워킹} 소식을 알려드립니다.dev-event.vercel.apphttps://linkareer.com/ 링커리어 LINKareer | 대외활동 공모전 대학생 인턴 대기업 채용정보대기업 채용, 인턴, 대학생 대외활동, 공모전, 동아리 등 개인에게 맞춤화된 커리어 정보를 추천받으세요! 커뮤니티에서 고민을 나누고, 인턴 및 신입 합격 후기도 확인 할 수 있습니다. 관심 있linkareer.com해당 두 사이트를 통해 구현하려고 한다.※ 크롤링 .. Gathering 기획 Gathering 이라는 사이드 프로젝트를 진행하려고 한다.Gathering은 기본적으로 대외활동을 같이할 사람을 찾아주는 웹앱이다. 추가적으로 대외활동 정보를 제공해줌으로써, 보다 쉽게 활동 정보를 얻고 해당 활동에 대해 맴버를 구할 수 있게 해주는 사이트이다.즉, 프로젝트 목표는 Gathering을 통해 사용자들이 더욱 쉽게 대외활동 정보를 얻고 함께할 사람을 찾는 것이다. 사용자 플로우예상 사용자 플로우는 다음과 같다.크게1. 로그인 및 회원가입2. 맴버를 모집하는 게시판3. 대외활동 정보 보여줌크게 3가지 기능을 구현하고자한다. 시스템 아키텍쳐 구성다음과 같이 Frontend는 Reactbackend 1은 Spring boot, backend 2는 FastAPI로 구성하고자 한다.backend 1.. 어노테이션 정리 1. 엔티티 매핑 관련 어노테이션@EntityJPA에서 엔티티 클래스임을 나타내는 필수 어노테이션이다.이 어노테이션이 붙은 클래스는 데이터베이스 테이블과 매핑된다.@Table엔티티가 매핑될 테이블의 이름과 속성을 설정한다.속성: name(테이블 이름), schema(스키마 이름), uniqueConstraints(유니크 제약 조건 설정) 등.@Id기본 키로 사용될 필드를 지정한다.@GeneratedValue기본 키 값을 자동으로 생성하는 전략을 정의한다.전략: GenerationType.AUTO, GenerationType.IDENTITY, GenerationType.SEQUENCE, GenerationType.TABLE.@Column엔티티의 필드를 매핑할 테이블 컬럼의 정보를 설정한다.속성: name(.. 값 타입 JPA에서 값 타입(Value Type)은 엔티티와는 달리 식별자가 없는 데이터 타입으로, 데이터의 속성 값이나 속성 집합을 표현하는 데 사용된다. 값 타입은 엔티티의 속성을 구성하거나 다른 엔티티와 관계 없는 데이터를 표현할 때 주로 사용된다.JPA에서 값 타입은 크게 다음 네 가지로 분류된다:기본 값 타입임베디드 타입(복합 값 타입)값 타입과 불변 객체값 타입 컬렉션 1. 기본 값 타입 (Basic Value Type)기본 값 타입은 자바에서 기본적으로 제공하는 기본 데이터 타입과 래퍼 클래스, 그리고 String, BigDecimal, BigInteger 같은 타입들을 의미한다. 기본 값 타입은 자체적으로 값이 변경되거나 분리될 수 없는 타입이다.기본 값 타입의 특징식별자가 없음: 기본 값 타입은 .. 프록시와 연관관계 관리 JPA에서 프록시와 연관관계 관리는 엔티티와 데이터베이스 간의 관계를 효율적으로 처리하기 위해 중요한 역할을 한다. 특히, 프록시 객체를 통해 엔티티를 필요할 때만 로딩하고, 즉시 로딩과 지연 로딩을 활용하여 성능을 최적화할 수 있다. 또한, 영속성 전이(cascade)와 고아 객체 관리는 엔티티의 생명 주기를 관리하는 데 중요한 개념이다. 1. 프록시프록시(Proxy)는 실제 엔티티 객체를 대신해 간접적으로 객체를 참조하는 객체이다. JPA는 데이터베이스의 데이터를 완전히 로딩하지 않고도 프록시 객체를 통해 지연 로딩을 사용할 수 있도록 지원한다. 프록시 객체는 실제 데이터가 필요한 시점에 데이터베이스에서 조회를 수행하여 데이터를 가져온다.프록시 사용 예시Member member = em.getRefe.. 고급 매핑 JPA는 기본적인 엔티티 매핑 외에도 다양한 고급 매핑 기능을 지원하여 복잡한 객체-관계 매핑을 처리할 수 있도록 돕는다. 이 고급 매핑 기능을 통해 상속 관계, 복합 키, 식별 관계, 조인 테이블, 그리고 여러 테이블과의 매핑을 유연하게 설정할 수 있다. 1. 상속 관계 매핑JPA는 객체 지향 언어의 상속을 관계형 데이터베이스와 매핑할 수 있는 기능을 제공한다. JPA에서는 상속 구조를 여러 가지 전략으로 데이터베이스에 매핑할 수 있다.상속 매핑 전략단일 테이블 전략(Single Table): 상위 클래스와 하위 클래스가 하나의 테이블에 모두 저장되는 방식이다.조인 전략(Joined Table): 상위 클래스는 상위 클래스 테이블에, 하위 클래스는 하위 클래스 테이블에 저장하는 방식이다. 두 테이블은 .. 다양한 연관관계 매핑 JPA에서 다양한 연관관계 매핑은 객체 모델에서의 관계와 데이터베이스의 테이블 간 관계를 정의하고 관리하는 중요한 부분이다. 객체 지향 세계에서 엔티티는 다양한 방식으로 서로 연관될 수 있다. JPA는 이러한 연관관계를 다양한 매핑 방식으로 처리하며, 이를 통해 관계형 데이터베이스의 외래 키와 객체 참조 간의 불일치를 해결한다.연관관계는 크게 네 가지로 분류할 수 있다:다대일(Many-to-One)일대다(One-to-Many)일대일(One-to-One)다대다(Many-to-Many) 1. 다대일(Many-to-One) 관계다대일 관계는 가장 일반적으로 사용되는 관계로, 여러 엔티티가 하나의 엔티티와 연결되는 관계이다. 예를 들어, 여러 명의 회원이 하나의 팀에 속하는 경우를 다대일 관계라고 한다.예시: .. 연관관계 매핑 기초 JPA에서 엔티티 간의 관계를 매핑할 때 연관관계를 정의하는 것이 매우 중요하다. 객체 지향 설계에서는 클래스가 서로 연관될 수 있으며, 데이터베이스에서는 테이블 간에 외래 키를 통해 관계를 맺는다. JPA는 이러한 객체와 테이블 간의 관계를 매핑하는 기능을 제공한다.연관관계는 크게 단방향과 양방향으로 나뉘며, 연관관계를 설정할 때는 특히 연관관계의 주인을 이해하는 것이 중요하다. 1. 단방향 연관관계단방향 연관관계는 한쪽 엔티티에서 다른 쪽 엔티티로만 참조하는 관계이다. 예를 들어, 회원(Member) 엔티티에서 팀(Team) 엔티티로만 참조하는 관계를 단방향 연관관계라고 한다. 반대 방향으로는 참조가 불가능하다.예시: Member -> Team (단방향 연관관계)@Entitypublic class M.. 이전 1 2 3 4 5 6 ··· 15 다음