만족은 하되 안주하지는 말자

기록해야 기억한다

프로그래밍 162

[Spring] @Sql 어노테이션을 test class에서 1번만 실행시키려면?

문제 @Sql(value = "/db/cossc/test.sql") @SpringBootTest @ActiveProfiles("test") class QuizServiceTest { @Autowired private QuizRepository quizRepository; @Test public void test() { // ...테스트 코드 } @Test public void test2() { // ...테스트 코드 } @Test public void test3() { // ...테스트 코드 } } // 나의 경우엔 quiz test를 위해선 의존관계가 있는 tag entity를 초기화해줘야했다 // test.sql INSERT INTO cossc.TAG (tag_id, created_date, upda..

[JAVA] 보석 쇼핑

문제 https://programmers.co.kr/learn/courses/30/lessons/67258?language=java 코딩테스트 연습 - 보석 쇼핑 ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr 내 풀이 import java.util.*; class Solution { public int[] solution(String... gems) { int[] answer = new int[2]; // 리스트 내 모든 보석 종류를 빠른속도로 카운팅할 수 있다. Set allKinds = new HashSet(); Collections.addAll(allKinds, gems); int..

[JAVA] 10진수 n진수 변환 (n진법 변환)

알고리즘 문제에서 자주 사용되는, 10진수 -> n진수 변환 방법에 대해 알아보자. Integer.toString 과 toBinaryString 메서드 2진수로 변환 final String binNum = Integer.toBinaryString(16); System.out.println("binNum = " + binNum); final String formattedNumber = String.format("%8s", binNum).replace(" ", "0"); System.out.println("formattedNumber = " + formattedNumber); 2진수는 toBinaryString(int number); 메서드를 사용하면 문자열로 변환해 보여준다. 만약, 앞에 0을 원하는만큼 ..

[java] 파일명 정렬

문제 https://programmers.co.kr/learn/courses/30/lessons/17686?language=java 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 내 풀이 import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; class Solution { class Record { public String name; public String head; public int number; ..

[java] Date, LocalDateTime 사용법 간단 정리

Java 8+ 에선 Date 클래스의 단점을 보완한 LocalDateTime 클래스가 도입되었다. 그러나 많은 레퍼런스에선 아직 Date 클래스를 활용한 코드들이 많이 보인다. 프로그래머스라던지, 프로그래머스라던지... 그래서 각 클래스들로 원하는 동작을 구현할 수 있도록 각각 정리해봤다. 현재 시간 구하기 // LocalDateTime final LocalDateTime now = LocalDateTime.now(); System.out.println("now = " + now); // Date final Date now2 = new Date(); System.out.println("date = " + now2); 기본적으로 LocalDateTime 은 static method 들로 처리를 한다. Da..

[HTTP] RESTful API

restful api 를 설명하라 rest 하게 잘 구성된 api 를 의미합니다. rest (Representational State Transfer) 하다는 것은 URI에 자원을 명시하고 HTTP method로 행위를 정의해서 서버로부터 데이터를 받거나 서버측에 데이터를 반영시키도록 하는 걸 명시적으로 잘 구현했다는 것이라고 생각합니다. REST 규약을 지키는 것은 여러 룰이 있겠으나 가장 와닿는건 아래 세가지입니다. HTTP 여야 함 stateless 해야 함 보안, 로드밸런싱 등 서버 내부구조를 클라이언트는 모르게 계층화해야함 HTTP to CRUD HTTP 메서드를 CRUD (기본으로 데이터 처리를 위해 갖추어야할 4가지 인터페이스 : 위키 발췌) 에 매핑하자면 아래와 같습니다. POST : Cr..

[JAVA] 길 찾기 게임

문제 https://programmers.co.kr/learn/courses/30/lessons/42892?language=java 코딩테스트 연습 - 길 찾기 게임 [[5,3],[11,5],[13,3],[3,5],[6,1],[1,3],[8,6],[7,2],[2,2]] [[7,4,6,9,1,8,5,2,3],[9,6,5,8,1,4,3,2,7]] programmers.co.kr 내 풀이 import java.util.*; class Solution { class Node { public int idx; public int x; public int y; public Node left; public Node right; Node (int idx,int x, int y) { this.idx = idx; this...