[DB] DB 형상 관리 - Liquibase Best Practices
·
1.프로그래밍/DB
DB 형상 관리 - Liquibase Best PracticesBest PracticesThis page contains a list of best practices to follow when using Liquibase.docs.liquibase.comLiquibase Best PracticesLiquibase 공식문서에서 가장 효율적으로 잘 활용하는 방법에 대한 예시디렉토리 구조changelog 를 릴리즈 별로 구성.DB Access 코드 즉, DAO, Repository 코드 근처에 구성해라.com example db changelog db.changelog-root.xml db.changelog-1.0.xml db.changelog-1.1.xm..
[DB] DB 형상관리 - Liquibase
·
1.프로그래밍/DB
DB 형상관리 - liquibaseLiquibaseLiquibase 는 개발부터 product 생산까지 데이터베이스 변경 사항을 보다 빠르고 안전하게 수정하고 릴리스할 수 있는 데이터베이스 스키마 변경 관리 솔루션.Liquibase가 제공하는 기능Changeset: database 변경 사항을 정의Changelog: 데이터베이스 변경을 파일로 기록Update: 다양한 실행 커맨드를 통해 Liquibase 조작About Liquibase CommandsThis page contains a list of all commands available in all tiers of Liquibase.docs.liquibase.comLiquibase 파일 형식XML ..
[DB] DB 형상 관리 - FlyWay
·
1.프로그래밍/DB
DB 형상 관리 - FlyWayDB 형상관리DB 형상관리(Database Version Control 또는 Database Source Control)는 데이터베이스의 스키마, 데이터 및 관련 객체를 버전 관리하는 프로세스.이를 통해 데이터베이스 변경 사항을 추적하고 관리하여 개발자 및 운영팀이 데이터베이스를 일관되게 유지할 수 있다.LiquibaseLiquibase는 Java 기반의 오픈 소스 데이터베이스 마이그레이션 도구.XML 또는 YAML 과 같은 마크업 언어를 사용하여 데이터베이스 스키마 변경을 기술.변경 사항을 버전 관리하여 데이터베이스를 업데이트.데이터베이스의 변경 내역을 추적하는데 주로 사용됨.FlywayFlyway는 오픈 소스의 자동화된 데이터베이스 마이그레이션 도구.SQL 스크립트를 이..
[NHN Academy] NHN Academy 인증 과정
·
1.프로그래밍/개발
NHN Academy Java 백엔드 광주 1기 https://nhnacademy.github.io/ 기간: 2022.07 ~ 2023.03 지난 약 7개월간의 과정을 마치고 인증과정 수료를 받았다. (Advanced Java과정, Java Backend과정, 인증과정) NHN Academy 과정 중의 Github 백엔드 과정 개인 Github: https://github.com/NHN-Academy-GwangJu-1st 프로젝트 Github: https://github.com/itbook-store 인증을 목표로 달려왔지만 마지막 테스트 시험때 문제로 인하여 시험 결과가 좋지 않아 수료를 받게 되었다. 하지만, 이에 대해 최선을 다했기에 후회는 없고 미련을 갖고 있기에는 시간낭비라고 생각하고 떨쳐내고자..
[NHN Academy] NHN Academy 인증 과정 프로젝트 발표
·
1.프로그래밍/개발
장바구니 발표 NHN Academy 인증과정 프로젝트 발표를 팀에서 대표로 ‘장바구니’ 라는 주제를 맡아 발표하였다. 나에게 되게 뜻깊고 좋은 경험이었기에 그에 대한 내용을 적어보려 한다. 해당 글은 노션을 통해 작성하였습니다.노션 링크 장바구니 구현 과정 1차 설계 && 구현 처음 장바구니에대해 구현 목표는 MySQL을 사용하여 구현 하는 것이었다. 그 이유로는 회원의 장바구니 데이터를 영구적으로 저장하고자 하였다. 팀원들과 ERD 설계와 구현에 대한 이야기를 나누었을 때 무신사, 쿠팡 등 실제 사용하고있는 쇼핑몰을 예시로 들어 회원의 장바구니가 영구적으로 저장되었으면 한다고 이야기를 나누었고, 나 또한 그에 맞는 구현을 하고 싶었다. 또한, 어느 한 인터넷 기사에서 사용자의 소비 패턴을 분석한 글을 ..
[DataSource] DataSource 설정 정리
·
1.프로그래밍/DB
해당 글은 Naver D2 를 읽고 참고하여 정리해 놓은 것입니다. initialSize: BasicDataSource 클래스 생성 후 최초로 getConnection() 메서드를 호출할 때 커넥션 풀에 채워 넣을 커넥션 개수 maxActive: 동시에 사용할 수 있는 최대 커넥션 개수(기본값: 8) maxIdle: 커넥션 풀에 반납할 때 최대로 유지될 수 있는 커넥션 개수(기본값: 8) minIdle: 최소한으로 유지할 커넥션 개수(기본값: 0) maxActive >= initialSize maxActive = 10이고 initialSize = 20이라고 가정하면 최초에 커넥션을 생성할 때 initialSize 값이 최대 커넥션 개수인 maxActive 값보다 커서 논리적으로 오류가 있는 설정이다. m..
[Spring Security] Spring Security OAuth2.0 Flow
·
1.프로그래밍/Java
OAuth 2.0 (OpenID Authentication) OAuth (OpenID Authentication) 란, 타사의 사이트에 대한 접근 권한을 얻고 그 권한을 이용하여 개발할 수 있도록 도와주는 프레임워크다. 구글, 카카오, 네이버 등과 같은 사이트에서 로그인을 하면 직접 구현한 사이트에서도 로그인 인증을 받을 수 있도록 되는 구조다. 물론 구글에서 로그인을 했다고 해서, 개발한 웹 사이트에 구글 ID와 PW를 그대로 전달해주면 안되므로, Access Token을 발급 받고, 그 토큰을 기반으로 원하는 기능을 구현해야 한다. Access Token은 로그인을 하지 않고 인증을 할 수 있도록 해주는 인증 토큰 정도의 개념이다. 유저 A가 직접 개발한 웹 사이트 X에서 자신의 구글 캘린더에 대한 ..
[Redis] WRONGTYPE Operation against a key holding the wrong kind of value
·
1.프로그래밍/DB
[Redis] WRONGTYPE Operation against a key holding the wrong kind of value 레디스에 데이터를 집어 넣고 데이터를 조회하려 했다. opsForSet을 통해 Set을 이용하여 데이터를 관리하려고 했다. 그런데, 위와 같은 에러가 뜨면서 조회가 되질 않았다. 찾아보니, 레디스에도 데이터 타입이 존재하고, Set의 경우 smembers key 형식으로 가져올 수 있다고 한다. Redis support 5 types of data types. You need to know what type of value that key maps to, as for each data type, the command to retrieve it is different. Her..
MyeongDev
'1.프로그래밍' 카테고리의 글 목록 (2 Page)