본문 바로가기

Dot Programming/Spring Clone

[스프링 웹앱 프로젝트 #42] PostgreSQL 설치 및 Spring 연동

    1. Mac에 PostgreSQL 설치 및 설정

     

    PostgreSQL (Postgres.app) 설치 (for mac)

    1. 설치 방법 1) Postgres.app 2) Homebrew 3) MacPorts 4) Fink 3,4 번은 처음 보는 것들이라 몸르겠고 1번과 2번중 간단하고 직접적으로 설치가 가능한 Postgres.app 방법을 선택. 이런 프로그램을 받을 때 버..

    loosie.tistory.com

     

     

    2. Spring Project 개발환경에 설정

    1) DB와 유저(role) 만들고 유저에게 권한 할당하기

     

    create database testdb;
    create user testuser with encrypted password 'testpass';
    grant all privileges on database testdb to testuser;

     

     

    2) application-dev.properties에 DB 정보 설정

    • dev 프로파일(Profile)용 설정 파일

    application-dev.properties 파일 생성

    spring.jpa.hibernate.ddl-auto=update
    
    spring.datasource.url=jdbc:postgresql://localhost:5432/testdb
    spring.datasource.username=testuser
    spring.datasource.password=testpass

     

     

     edit Configurations > Active profiles 에 'dev' 입력 후 Run

     

     

     

    구현코드

     

    #42 PostgreSQL 설치 및 설정 · loosie/spring_jpa_study__dotStudy@9e26c75

    Permalink This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. Browse files #42 PostgreSQL 설치 및 설정 Loading branch information Showing 2 changed files with 6 additions and 1 deletion. +1

    github.com

     

     

     

    3. PostgreSQL 사용하기

    1. 데이터베이스를 생성 후 스키마 목록 확인, 생성하기

    ~ \dn

     

    ~ create SCHEMA {schema 이름};

     

     

    2. 테이블 목록 확인, 생성하기

    \dt는 public 스키마에 속한 테이블만 보여준다. 특정 스키마의 테이블을 확인하려면 \dt {schema이름}.*;

    ~ \dt 

     

    PostgreSQL 데이터 타입 참고하기

    ~create table public.account(id bigint primary key, bio varchar(255), email varchar(255), email_check_token varchar(255), email_check_token_generated_at timestamp, email_verified boolean, joined_at timestamp, location varchar(255), nickname varchar(255), occupation varchar(255), password varchar(255), profile_image text, study_created_by_email boolean, study_created_by_web boolean, study_enrollment_result_by_email boolean, study_enrollment_result_by_web boolean, study_updated_by_email boolean, study_updated_by_web boolean, url varchar(255));

     

    테이블 더 자세한 정보 확인하기

    ~ \d public.account

     

     

     


    참고

    인프런 강의 - 스프링과 JPA 기반 웹 애플리케이션 개발