H2 는 자바로 작성된 RDBMS이다. 자바에서 간단한 테스트 등을 하기 위해 만들어졌다. 주로 스프링 부트와 같은 자바로 개발하는 프레임워크에서 사용한다. Mode In-Memory Mode: 메모리에 디비를 올리는 방식이다. 휘발성이기 때문에 간단한 테스트 등에 사용된다. Embedded Mode: 데이터를 PC에 저장하는 방식이다. 데이터가 비휘발성이기 때문에 개발 초기 단계에 사용된다. Server Mode: 서버를 구축해서 사용하는 방식이다. 테스트 서버로 사용된다. 최근 스프링 부트와 같은 자바를 사용하는 프레임워크에서 H2를 사용할 때 H2를 자동으로 설치해주는 기능이 1.4.x 버전부터 없어졌다. 그래서 H2를 설치하는 방법을 다룬다. 설치 아래 링크로 들어가 가장 최신의 버전을 다운받는다..
Database
파이썬의 객체는 _로 시작하는 속성을 가리는 은닉화의 속성을 가지고 있다. 그렇기 때문에 SQLModel에서도 _를 포함한 필드를 가져올 수 없는 이슈가 있다. 필자는 작업 중에 사용한 테이블에 _TIMESTAMP 와 같은 필드가 있어 이런 이슈를 직면하게 되었다. 이 이슈를 해결하기 위해 디렉터분께 질문을 드렸고, SQLModel은 기존의 SQLAlchemy의 컬럼을 사용할 수 있는 sa_column이란 프로퍼티를 찾아주셨다. sa_column은 SQLAlchemy Column의 줄임말이다. 아래는 일반적인 Post 모델이다. class Post(Base, table=True): id: int = Field(primary_key=True, index=True) name: str = Field() aut..
Hive는 Dart로 작성된 빠르고 가벼운 NoSQL(key-value) 데이터베이스입니다. 그리고 다음과 같은 장점이 있습니다. 🚀 의존성이 없기 때문에 크로스 플랫폼(모바일, 데스크탑, 브라우저)에서 사용 가능합니다. ⚡ SharedPreferences와 SQLite보다 성능이 뛰어납니다. (벤치마킹 자료) ❤️ 사용방법이 간단하고 직관적입니다. 🔒 강력한 암호화(encryption)가 내장되어 있습니다. 설치 및 사용방법은 공식 문서에 자세하게 나와있습니다. 문서를 보면서 따라해보겠습니다. 시작하기 프로젝트에 Hive 추가하기 pubspec.yaml 에 다음을 추가합니다. dependencies: hive: ^2.0.4 hive_flutter: ^1.0.0 dev_dependencies: hive_..
항목 주소 공지사항 알림 상품 카테고리 후기 광고 채팅 파일 신고 유저 로그 직접 제작한 ERD로써 저작권은 나에게 있으므로 복붙해서 써도 상관 없다. 지속적으로 작성 중에 있어서 수정될 수 있고 항상 정상 작동 할 지는 불분명하다. 회원이 중심이 되도록 만들어서 그런지 스노우 플레이크의 형태를 띈다. 그런데 이러면 수평적 확장이 힘들어 보일 수 있는데 스노우 플레이크 형태이므로 수평적으로 확장될 필요는 없다. 각 서비스의 경계를 명확하게 표기 해주기만 하면 문제 없이 모든 방향으로 확장해 나갈 수 있다. 화질이 깨지므로 자세하게 보고 싶다면 아래 erdcloud의 링크를 참고 https://www.erdcloud.com/d/98H5gmB6imWXe4ecc 중고거래_khw 회원을 가장 왼쪽에 두고 각 구..