회사 프로젝트 진행중 특이한 기능을 추가 하기로 했어요. 사진을 찍어서 특정 영역을 크롭 하는 기능을 추가 하는 것인데, 현재 진행중인 프로젝트는 Flutter 로 만들고 있었는데 Flutter 라이브러리를 아무리 뒤져봐도 최신 업데이트를 주기적으로 하는 Flutter 라이브러리가 보이지 않아 직접 native에 라이브러리를 추가 하여 Flutter로 읽어 오려 해요. 해당 문서는 Flutter 프로젝트에서 Android native 에 opencv 를 설치 하기 위한 문서에요 이제 시작 할게요. 1. 먼저 opencv를 다운 받아야 해요 아래 Github 에서 최신 releases 버전을 다운 받아 주세요. 저는 안드로이드 native에서 사용할 것이기 때문에 opencv-4.7.0-android-sd..
객체를 테이블에 맞추어 데이터 중심으로 모델링 하면, 협력 관계를 만들 수 없다. - 테이블은 외래 키로 조인을 사용해서 연관된 테이블을 찾는다. - 객체는 참조를 사용해서 연관된 객체를 찾는다. - 테이블과 객체 사이에는 이런 큰 간격이 있다. 단방향 연관관계 객체 지향 모델링 (객체 연관관계 사용) 객체 지향 모델링 (객체의 참조와 테이블의 외래 키를 매핑 ) @Entity public class Member { private Long id; @Column(name = "USERNAME") private String name; private int age; @Column(name = "TEAM_ID") private Long teamId; @ManyToOne @JoinColumn(name = "TEA..
@Entity - @Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다. - JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수 주의 - 기본 생성자 필수 - final 클래스, enum, interface, inner 클래스 사용 x - 저장할 필드에 final 사용 x 데이터베이스 스키마 자동 생성 개발단계에서 Application 로딩 시점에 테이블 생성 기능이 있음 - DDL(Data Definition Language)을 어플리케이션 실행 시점에 자동 생성 - 테이블 중심 -> 객체중심 - 데이터베이스 방언을 활용해서 데이터베이스에 맞는 적절한 DDL 생성 - 이렇게 생성된 DDL은 개발 장비에서만 사용 - 생성된 DDL은 웅영서버에서는 사용하지 않거나, 적절히 다담은 후에 사..
- JPA 를 이해하는데 가장 중요한 용어 - "엔티티를 영구 저장하는 환경" 이라는 뜻 - EntityManger.persist(entity) 엔티티의 생명주기 - 비영속 객체를 생성한 상태 EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); tx.begin(); Member member = new Member(); member.setId("memberA"); member.setName("soycrab"); //객체를 저장한 상태(영속성 Context에 저장) ..