스프링 부트 버전 2.3.1 에서 H2 SQL 문법을 MySQL 문법으로 변경한 후 H2 콘솔 사용하는 방법

스프링 부트 버전: 2.3.1 Gradle 버전: 6.4.1 스프링 부트 버전 2.3.1 에서 H2 SQL 문법을 MySQL 문법으로 변경한 후 H2 콘솔 사용하기 위해 Datasource를 설정해야 합니다. 1) application.properties 파일에 다음 내용을 추가합니다. # H2 설정 spring.h2.console.enabled=true spring.h2.console.path=/h2 # Datasource 설정 spring.datasource.driver-class-name=org.h2.Driver spring.datasource.url=jdbc:h2:mem://localhost/~/testdb;MODE=MYSQL spring.datasource.username=sa spring.datasource.password= # sql 보기 spring.jpa.show_sql = true 더보기…

스프링 부트에서 H2를 테스트하려고 하는데 Database not found, either pre-create it … 에러가 발생할 때

macOS 기준입니다. 스프링 부트에서 H2 콘솔을 사용하려고 하는데 아래 에러가 발생하는 경우 Database … not found, either pre-create it or allow remote database creation (not recommended in secure environments) 원인은 보안 측면상 웹 콘솔 환경에서 데이터베이스를 생성할 수 없도록 막아놨기 때문에 발생한다고 합니다. 해결 방법은 홈브루(brew)를 통해 별도의 H2를 설치한 더보기…

macOS 홈브루(brew)에서 Updating Homebrew… 멈춤현상 해결방법 및 권한 설정 방법

macOS 홈브루(brew)에서 Updating Homebrew… 멈춤현상 해결방법 (스택오버플로 링크) control + z 버튼을 눌러 업그레이드 작업 중단 터미널창에 brew doctor 입력 터미널창에 brew cleanup 입력 터미널창에 brew doctor 다시 입력 sudo xcode-select –install 입력   권한 오류 해결방법 다음과 같은 에러가 나오면서 brew 프로그램 설치가 안될 때 Error: The following directories are not writable by 더보기…

자바(Java): 빌더 패턴(Builder Pattern) 일반 + 롬복(Lombok) + 단위 테스트

참고 블로그   자바(Java)에서 객체를 생성할 때 사용하는 패턴이 여러 가지가 있습니다. 그 중 가장 대표적안 생성자 패턴(constructor pattern)은 지금 채워야 할 필드가 무엇인지 명확히 지정할 수 없습니다. 하지만 빌더 패턴(builder pattern)을 사용하면 어느 필드에 어떤 값을 채워야 할지 명확하게 지정할 수 있습니다.   일반적인 생성자 패턴의 예시는 다음과 같습니다. 더보기…

Spring Boot: Spring JPA + H2 데이터베이스 기초 + 단위 테스트

롬복(Lombok)이 설치되어 있는것을 전제로 합니다. 스프링 부트 버전: 2.3.1 Gradle 버전: 6.4.1 스프링 부트 Spring Boot: Spring JPA + H2 데이터베이스 기초 + 단위 테스트   1. build.gradle에 디펜던시 추가 dependencies { … // Spring JPA implementation ‘org.springframework.boot:spring-boot-starter-data-jpa’ runtimeOnly ‘com.h2database:h2’ // https://mvnrepository.com/artifact/javax.persistence/javax.persistence-api // 프로젝트에 javax.persistence 가 없는 경우 설치 compile 더보기…

Spring Boot: Gradle 버전 5 이상에서 롬복 설치 + 단위 테스트

스프링 부트 버전: 2.3.1 Gradle 버전: 6.4.1 1. Gradle 버전 확인 Gradle 버전이 5 이상인 경우 아래와 같이 진행하고, 4 이하라면 다른 방법으로 진행해야 합니다.   2. build.gradle에 롬복 부분 추가 dependencies { … // lombok annotationProcessor(“org.projectlombok:lombok”) compileOnly(“org.projectlombok:lombok”) … }   3. 롬복 플러그인 설치 (인텔리제이 아이디어 기준)   4. 더보기…

Spring Boot: JUnit 단위 테스트 기초 (GetMapping 테스트, 인텔리제이 기준)

스프링 부트(Spring Boot) 버전 2.3.1, Gradle 6.4.1 기준입니다. 1. 패키지를 생성 (예: com.example.awsboard.web) 2. 컨트롤러 및 GetMapping 예제 작성 package com.example.awsboard.web; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class BasicController { @GetMapping(“/hell”) public String hello() { return “Hell”; } }   3. 동일한 패키지를 src > test > java 에 패키지 더보기…

macOS 인텔리제이(IntelliJ) 커뮤니티 버전 설치 + 스프링 부트 프로젝트 생성

원래 인텔리제이 프로그램은 유료로 구독해야 하지만 커뮤니티 버전은 인텔리제이 정품의 일부 기능을 제거하고 무료로 제공합니다. 인텔리제이 (IntelliJ) 커뮤니티 버전 설치 젯브레인 툴박스 설치 – https://www.jetbrains.com/ko-kr/toolbox-app/ 젯브레인 툴박스 실행 후 타이틀바에 있는 아이콘 클릭 후, 인텔리제이 커뮤니티 버전을 설치합니다. 테마 선택 등 초기 설정을 진행합니다. 스프링부트 프로젝트 만들기 (인텔리제이 커뮤니티 버전) spring 더보기…

자바스크립트: TTS(Text-to-Speech) 라이브러리 없이

자바스크립트에서 TTS 기능을 사용하는 방법입니다. TTS(Text-to-Speech)는 텍스트를 음성 합성을 통해 컴퓨터가 읽어주는 것으로 트위치 영상등에 있는 음성 도네이션이 TTS 를 사용합니다. 음성합성으로 읽을 내용, 언어, 음성의 속도 높낮이 등을 <span class="pl-k">new</span><span> </span><span class="pl-v">SpeechSynthesisUtterance</span><span class="pl-kos">(</span>) 로 설정하고 재생은 speechSynthesis.speak()를 사용합니다. speechSynthesis는 window 객체 내에 있기 때문에 그냥 사용하면 됩니다. 재생중인 음성합성을 중지할때는 speechSynthesis.cancel()을 사용합니다. 더보기…

[TMI] 2020년 우아한형제들 테크캠프 2차 코딩테스트 합격했었습니다.

개발자 커리어에 있어 두 번 다시 일어나지 않을 인생 최대 업적 찍었습니다. 우아한형제들(배달의민족) 채용전제형 인턴 모집인 테크캠프 과정에 1, 2차 코딩테스트 합격하고 최종면접 광탈했습니다. 마지막까지 최대한 준비하고 노력했지만 결과는 좋지 못했습니다. 돌이켜보면 1차 코딩테스트는 자력으로 합격할만 했다고 생각하고, 2차 코딩테스트에서 많이 봐준게 아닌가 싶습니다. 2차에서 봐준것처럼 면접도 한번만 더 너그럽게 더보기…