java

    SpringBoot(4) 2.4.x application.yaml(yml) 설정

    이번에 여러 방식으로 테스트들을 진행해보고 있는데, 특히 H2 DB를 이용한 In-Memory 테스트를 진행하는 중에 기존에 사용하던 profile의 datasource 설정을 그대로 놔두고 test용 profile을 작성하여 실제 db와 테스트용 H2 DB 설정을 분리하는 작업을 진행해봤다. (H2 DB 설정 및 H2를 이용한 테스트는 다음에...) 그러면서 기존에 작성한 application 설정 파일의 구동 방식이 Spring Boot 2.4 버전에 들어서 변경된 것을 알게 되어 기존 profile의 migration도 같이 진행하게 되었다. Migration 1. spring.profile 2.4.x 이전 버전에서는 ---를 구분자로 사용하여 하나의 application 설정 파일에 profile..

    Java selenium 오류 : chromeDriver 실행 후 바로 종료되는 현상 해결

    여느때와 변함없이 웹크롤링을 하려고 하는데 어제까지만 해도 잘 돌아가던 웹크롤러가 갑자기 먹통 ㄷㄷㄷ; 크롬창이 잠깐 켜졌다가 순식간에 지 맴대로 꺼져버려서 크롤링이 안되는 상황이었다. 에러 로그를 보니 URL도 제대로 받았고 창도 성공적으로 켜졌으나 원인 모를 이유로 인해 chromeDriver가 강제종료 되는 현상이 나타났다. 그러다 문득 어제 퇴근할때 쯤 크롬 브라우저가 업데이트 할 거냐고 물어봐서 까짓거 하거라 하고 확인을 눌렀던 것이 생각났다. 아, 문제는 바로 내 손에서 나왔구나... 크롬 브라우저의 엔진버전과 현재 사용하고있는 chromeDriver의 버전사이에 호환성 문제일 것 같다... 싶어서 언능 새 버전의 chromeDriver를 받았더니 아주 잘된다. chromeDriver Down..

    SpringBoot(3) MockitoAnnotations.initMocks Deprecated

    개발 환경 : JAVA 1.8 / Spring Boot 2.4.1 / Gradle 6.7.1 / MySql IDE : IntelliJ 20.3.3 Dependency : spring-boot-starter-test:2.4.1 or mockito-all:1.10.19 저번에 공부했던 Mockito를 오늘 추가적으로 공부하려고 프로젝트를 켜보니 이렇게 .initMocks 에 취소선이 생기고 @Deprecated 선언이 되어있었다. 이게 뭔일이여.. 하고 찾아보니 Mockito-core 3.4.0 api 이상부터는 .initMocks는 deprecated 되고 대신 .openMocks 라는 메소드를 사용하라고 한다. javadoc Mockito 문서 - MockitoAnnotations 대충 initMocks..

    Spring Boot (1) MybatisTest를 통한 Mapper 단위 테스트

    개발 환경 : JAVA 1.8 / Spring Boot 2.4.1 / Gradle 6.7.1 / MySql IDE : IntelliJ 20.3.3 Dependency : mybatis-spring-boot-starter-test 2.1.3 * 해당 포스팅은 공식문서를 참조하여 작성했습니다. mybatis Test 공식문서 링크 1. 필요한 의존 추가 1.1 Mybatis Test 추가 mybatis-test // Gradle의 경우 dependencies { testCompile("org.mybatis.spring.boot:mybatis-spring-boot-starter-test:2.1.3") } // Maven의 경우 org.mybatis.spring.boot mybatis-spring-boot-st..

    신입 개발자 면접 질문 준비(1)

    이번에 지인을 통해 한 기업에 면접을 볼 기회를 얻었다! 야호~ 첫 면접인 만큼 긴장도 되고 어느 정도의 준비가 필요한 지 감이 안 오는데 이참에 면접 질문에 대해 지금까지 공부한 것과 새로 찾아보면서 알게 된 것들을 하나씩 짚어보고 정리해보려 합니다. 특히 신입 개발자로서 어떤 부분을 자주 질문받는지에 대해 많이 찾아보고 공부했는데, 같은 신입 개발자 분들이 올려주신 자료나 예상 혹은 면접에서 직접 받았던 질문들과 시니어 개발자 분들이 올려주신 자신이 면접관일 때 신입 개발자에게 물어보는 질문들과 이에 대한 제 답안들을 미리 작성하며 동시에 면접 준비를 해보자고요! 기술에 관한 질문 이번에 제가 면접을 보게 된 기업의 기술 스택들을 살펴보면 Java와 JS, Spring framework를 사용하며, ..

    [BOJ/백준] 1330번 : 두 수 비교하기, 9498번 : 시험성적, 2753번 : 윤년, 14681번 : 사분면 고르기 - JAVA[자바] 2020. 07. 17

    문제 단계 2. if 문 문제 번호 1330 - 두 수 비교하기 문제 번호 9498 - 시험 성적 문제 번호 2753 - 윤년 문제 번호 14681 - 사분면 고르기 사용 언어 : JAVA ​ 2단계 if 문 문제 풀이를 시작했다. JAVA에서 가장 기본적으로 배우는 조건 문인 데다 2단계 문제라 그런지 수월하게 풀어갔다. 확실히 1단계에서 주어진 조건과 백준의 설정에 따라 소스코드를 작성하는 연습을 한 뒤라 어이없는 컴파일 오류나 런타임 오류로 인해 틀리는 경우는 한 번도 없었다. ​ 기본적인 문제인 만큼 확실하게 조건문을 작성하는 법을 연습하기에 좋았다. 근데 2단계의 마지막 문제인 2884번 알람시계는 뭔가 조건을 계속 빠트리는 느낌이 들어서 다음에 확실하게 해서 제출할 생각이다. 현재 소스코드는 ..

    [BOJ/백준] 2588번 : 곱셈 - JAVA[자바] 2020. 07. 17

    문제 단계 1. 입출력과 사칙연산 문제 번호 2588 - 곱셈 사용 언어 : JAVA ​ ​ 1단계를 끝마쳤다. 처음 시작할 땐 정답률을 보고 이걸 왜 틀리지? 했었는데 정작 내가 정답률을 떨어트리는데 일조했다는 게 아이러니.. ​ 항상 IDE를 사용하다 보니 자동완성이 습관이 되고 당연하게 됐는데 직접 종이에 적어가며 손 코딩을 하면서 내가 얼마나 대충 공부하고 있었는지 많이 느껴지게 되는 단계였다. ​ 문제 자체는 쉬운 게 맞지만 주어진 문제와 요구를 확실하게 파악하고 내 생각대로가 아닌 요구한 대로 정확하게 코드로 옮기는 것이 얼마나 중요한지도 알게 됐다. 내가 아무리 이게 좋다고 해도 결국 클라이언트가 원하는 대로 만들어 줘야 하는 현실을 반영한 것 같다... 설명해서 설득할 자신 없으면 그냥 하..

    [Programmers/Level1] 나누어 떨어지는 숫자 배열 - JAVA[자바] 2020. 11. 22

    Programmers Level1 문제 연습문제 : 나누어 떨어지는 숫자 배열 사용 언어 : JAVA ArrayList와 sort()를 이용해 쉽게 해결한 문제 문제 programmers.co.kr/learn/courses/30/lessons/12910 코딩테스트 연습 - 나누어 떨어지는 숫자 배열 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하 programmers.co.kr 손코딩 풀이 ArrayList와 sort를 이용하여 쉽게 해결한 문제이다. 연산을 통해 나누어 떨어지는 숫자가 없어서 answer배열에 아무런 ..