profile
Coding Duck
태그 목록
전체보기 (83)프로그래머스(16)baekjoon(10)Spring boot(8)level2(8)level3(7)BFS(5)oracle(4)Index(4)Java(3)boj(3)인덱스(3)M:1(2)DTO(2)db(2)SQLP(2)test(2)mysql(2)transaction(2)level4(2)튜닝(2)git(2)mac(2)JUnit5(2)DFS(2)goorm(1)테이블 Lock(1)mappedBy(1)릿코드(1)격리성(1)사용자 정의 함수(1)LCS(1)@PathVariable(1)INSERT(1)queue(1)S3(1)REST(1)KMP(1)@Valid(1)2048(1)junit(1)modelattribute(1)조건절 Pushing(1)FullText Search(1)willThrow(1)배치 프로그램(1)lock(1)velog(1)형변환(1)React(1)BCHR(1)TDD(1)다익스트라(1)404(1)오퍼레이션(1)파티션(1)Snapshot too old(1)JOIN(1)선택도(1)H2(1)Springboot(1)ParameterizedTest(1)Unnesting(1)연관 관계(1)후기(1)파일 업로드 취약점(1)windows(1)JavaScript(1)bdd(1)entity(1)ESLint(1)IO(1)프로시저(1)lighthouse(1)문자열(1)테스트(1)error(1)카디널리티(1)세그먼트 트리(1)@NotNull(1)500(1)트랜잭션(1)조건절 이행(1)sqlplus(1)데이터베이스(1)Sort(1)MyISAM(1)@JoinColumn(1)update(1)reset(1)시리즈(1)오토마타(1)조인 조건 Pushdown(1)오류(1)restapi(1)Parallels(1)재귀(1)스택(1)브루트 포스(1)조건절 Pullup(1)LCA(1)aws(1)github(1)버퍼 캐시 히트율(1)낙관적 동시성 제어(1)구현(1)병렬 처리(1)MVCC(1)비관적 동시성 제어(1)VO(1)교재(1)Database(1)array(1)정규화(1)InnoDB(1)난이도(1)dynamic programming(1)보안(1)로우 Lock(1)뷰 Merging(1)대소문자(1)BDDMockito(1)필터 오퍼레이션(1)SYSTEM(1)파일 다운로드 취약점(1)exception(1)설계(1)pwa(1)call(1)Consistent(1)current(1)다중버전 동시성 제어(1)서브쿼리(1)파티셔닝(1)IntelliJ(1)web(1)

@Transactional과 Exception 간의 관계

특정 메소드를 트랜잭션 내에서 수행하도록 하고싶을 때 @Transactional 메소드를 선언하여 사용할 수 있다. 아래와 같이 말이다.By default, a transaction will be rolled back on {@link RuntimeException}

2024년 4월 1일
·
0개의 댓글
·

ObjectMapper에 대해 알아보자.

Spring Boot를 이용해 개발을 하면서 ObjectMapper를 직간접적으로 사용하고 있었다. 기본 ObjectMapper를 사용했을 때 자주 잊어버리는 항목인 것 같아 이번 기회에 정리해보았다.Object에 해당하는 클래스에 @NoArgsConstructor가

2024년 3월 23일
·
0개의 댓글
·

Restful API란?

며칠 전, 오랜만에 대학교 선배를 만났고 이런 대화가 오고 갔다. > "진아, Rest API가 뭐야?" "어... 저도 정확하게 정의하기는 어렵지만... (어쩌구 저쩌구)" 그러게... Restful API가 뭘까? 1년 넘게 많은 API를 접했지만 정작 'Rest

2023년 5월 27일
·
0개의 댓글
·
post-thumbnail

Spring Boot에 S3 연동하여 파일 업로드하기 (+ 403 에러 해결)

버킷 정책 설정 참고build.gradleAmazonS3 bean 생성 및 주입bean으로 등록한 후 해당 빈을 주입받아 사용하는 것이 바람직하겠지만, 본인은 테스트를 위해 일단 @PostConstruct를 사용하여 해당 객체를 만들어주었다위에서 사용한 accessKe

2022년 12월 25일
·
0개의 댓글
·

Java9 불변 컬렉션

1. Java9의 불변 컬렉션 생성 1. List 1) List.of() 비어있는 리스트를 만들기 위해서는 List.of() 를 사용하면 된다. animalList.add("???") 처럼 뭔가를 넣으면 UnsupportedOperationException이 터진다.

2022년 11월 7일
·
0개의 댓글
·

Oracle Consistent 모드 vs Current 모드

SCN 확인 과정을 거치며 쿼리가 시작된 시점을 기준으로 일관성 있는 상태로 블록을 액세스하는 것SQL 트레이스 Call 통계의 query 항목, AutoTrace에서의 consistent getsSQL문이 시작된 시점이 아니라 데이터를 찾아간 바로 그 시점의 최종 값

2022년 8월 31일
·
0개의 댓글
·

Mac M1에서 MSSQL 사용하기

패러렐즈를 이용해 Window11에 SQL Server 2019 설치를 시도했으나 0xe0000235 와 같은 오류코드와 함께 실패했다. (찾아보니 확실하지는 않지만 버전 문제라고 하는 것 같다.)참고 자료 : https://macguided.ngontinh2

2022년 8월 21일
·
2개의 댓글
·

IN vs EXISTS에 대한 고찰

조건에 해당하는 ROW의 컬럼을 비교하여 체크한다.서브 쿼리의 결괏값을 메인 쿼리에 대입하여 조건 비교 후 결과를 출력한다.조건에 해당하는 ROW의 존재 유무 체크 후 더이상 수행하지 않으며 SELECT절을 평가하지 않으므로 일반적으로 IN에 비해 성능이 좋다.메인 쿼

2022년 7월 23일
·
0개의 댓글
·

Mac M1에서 Parallels Windows 환경에 설치한 Oracle DB에 접속하기

Mac M1에서 Oracle Database 사용하기https://velog.io/@jduckling_1024/Mac-M1%EC%97%90%EC%84%9C-Oracle-DB-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0하지만 Parallel

2022년 6월 10일
·
0개의 댓글
·
post-thumbnail

Mac M1에서 Oracle DB 사용하기

여기에서 Parallel Desktop을 설치한다. 여기(https://www.oracle.com/database/technologies/oracle-database-software-downloads.html 설치하면 이런 압축파일이 생기는데 압축을 풀어준다.

2022년 6월 7일
·
0개의 댓글
·

파일 및 패키지 이름 변경으로 인해 Git branch 이동이 안될 때

클래스 명이나 패키지 명이 네이밍 컨벤션에 맞지 않아 변경해야 할 경우가 있다. 해당 이슈를 수행한 후 다음 이슈를 처리하러 feature -> develop 브랜치로 이동하고자 할 때 아래와 같은 에러를 접하게 된다.원래 master에 아래와 같은 class가 있었다

2022년 3월 1일
·
0개의 댓글
·
post-thumbnail

TM Lock

TM Lock은 DML 테이블 Lock으로 테이블을 보호하는 Lock이다.이제부터 이 트랜잭션을 트랜잭션A라고 부를 것이다.그러면 이렇게 정상적으로 업데이트 된다. 아직 commit은 하지 않은 상태다.이때, 다른 곳(새 cmd창)에서 empno가 1인 emp의 sal

2022년 2월 26일
·
0개의 댓글
·
post-thumbnail

Oracle System 계정 잃어버렸을 때

cmd 실행sqlplus 입력Enter user name : sys as sysdba, Password: (아무것도 치지 않고 바로 Enter)alter user system identified by 새 비밀번호ex) alter user system identified

2022년 2월 26일
·
0개의 댓글
·

TDD? BDD?

테스트케이스의 정의는 다음과 같다.테스트케이스본인이 작성한 코드가 예상한 대로 잘 동작하는지 예상되는 값을 부여하여 어플리케이션 빌드 시 동작을 검증하는 것타겟 코드에 대한 기대 행동을 제공하는 시나리오TDD는 테스트 주도 개발의 줄임말로 우선 테스트케이스를 작성한 뒤

2022년 1월 23일
·
1개의 댓글
·
post-thumbnail

JUnit5 @ParameterizedTest

테스트 코드를 작성하던 중, 한 기능에서 로직은 같지만 입력 파라미터만 다른 테스트케이스를 작성해야 할 일이 있었다. 코드는 중복되지만, 각 케이스에 대한 검증은 필요하므로 테스트 코드를 작성하지 않을 수는 없다. 이러한 경우 조금 더 코드를 간결하게 작성하는 방법이

2022년 1월 22일
·
0개의 댓글
·
post-thumbnail

BDDMockito의 willThrow에 대하여

테스트 코드를 작성하면서 예외가 발생했을 경우에 대한 케이스 쪽에서 한 가지 궁금한 점이 생겨 찾아보고 정리하게 되었다.BDDMockito의 willThrow를 사용하던 도중, 파라미터로 다음과 같이 작성할 수 있음을 알 수 있었다.이처럼 willThrow의 파라미터로

2022년 1월 22일
·
0개의 댓글
·

git reset vs git revert

git reset과 git revert 둘 다 결과적으로는 되돌릴 때 사용하는 것이지만 둘 사이에는 차이가 있다. 이제부터 이 둘의 차이를 알아볼 예정이다. 현재 commit 이력은 다음과 같다.모두 a.txt를 가지고 있으며 각 commit의 a.txt 내용은 아래와

2022년 1월 16일
·
0개의 댓글
·

[릿코드] 1345. Jump Game IV

https://leetcode.com/problems/jump-game-iv/처음에는 재귀함수를 사용하는 방법을 생각하고 이렇게 코드를 짰었다.다음과 같은 테스트케이스가 들어온다면?\[7, 7, 7, ... 7] <- arr.length = 3000재귀함

2022년 1월 16일
·
0개의 댓글
·

(프로그래머스) 가장 큰 정사각형 찾기

https://programmers.co.kr/learn/courses/30/lessons/12905처음에 특정 지점에서 모두 1로 구성된 정사각형 영역을 계속 구하자니, 반복적으로 탐색해야 한다는 점을 눈치채고 dp 문제라고 생각하였다.방법은 간단하다.현재

2021년 12월 1일
·
0개의 댓글
·
post-thumbnail

SyntaxError: Cannot use import statement outside a module 해결

개인 프로젝트 설정 중 작은 문제가 발생하였다.Node.js 서버를 실행하는데 이런 문제가 발생하였다.프로젝트 구조는 대략 이렇다.실행할 js 파일은 src 폴더 내에 있어 node_module 안에 있는 express를 import하지 못했다는 오류이다. 이를 해결하

2021년 11월 30일
·
0개의 댓글
·