programming
-
[ETC] 구글 OTP 인증 오류 해결 하기programming/ETC 2022. 2. 12. 15:40
구글 OTP 인증 오류 해결하기 * 자체 서버가 있고, 서버 및 코드를 수정할 수 있을 때의 문제 해결 방법입니다. 구글 OTP는 처음 사용할 때 QR코드를 스캔하거나, 키를 입력하여 일회용 비밀번호를 생성한다. 해당 번호들은 30초 간격으로 새로 생성되어서 일회용 비밀번호로 사용할 수 있다. 이 코드가 인증이 안 되는 경우 해결 방법. 1. 서버시간을 확인 후, 동기화한다. 클라이언트(휴대폰, 또는 컴퓨터)의 시간을 먼저 확인해보고, 서버의 시간을 확인해본다. 리눅스에선 date 명령어로 확인할 수 있는데, 이 시간이 클라이언트와 시간이 차이가 날 경우 인증이 되지 않을 수 있다. 이때 서버의 시간을 동기화해서, 클라이언트와 서버의 시간을 맞춰준다. 2. 인증코드 간격을 늘리는 방법 구글에서 'Goog..
-
[Java] Builder 어노테이션 기본값 사용하기(Builder.Default)programming/JAVA 2021. 12. 31. 14:16
@Builder 빌더 패턴을 사용하기 위해서 Lombok의 Builder 어노테이션을 사용할 수 있다. 아래처럼 해당 클래스에 붙여서 사용할 수 있다. import lombok.Builder; import lombok.ToString; @Builder @ToString public class Member { String id; int age; } @Builder Test Builder는 아래처럼 사용하면 된다. public class MemberTest { @Test void memTest(){ Member mem = Member.builder().build(); System.out.println(mem); } } 이때는 기본값이 설정되어 있지 않기 때문에 실행결과는 아래와 같다. @Builder.Def..
-
[Java] junit Disabled 어노테이션 사용하기programming/JAVA 2021. 11. 26. 21:18
@Disabled 어노테이션 사용하기 아래 코드는 2개의 테스트를 실행하기 위한 테스트 코드다. @SpringBootTest public class DisabledTest { @Test void test1(){ int result = 1; assertEquals(1,result); } @Test void test2(){ int result = 2; assertEquals(2,result); } } 인텔리제이에서 실행하면 두 개의 메소드 모두 실행되고 아래와 같이 보인다. 항상 모든 테스트를 같이 확인할 수 도 있지만, 일부 테스트를 제외하고 실행시키고 싶을 때, @Disabled를 사용할 수 있다. @Disabled가 적용된 코드 @Test @Disabled void test2(){ int result ..
-
[Java] 테스트메소드에 이름 붙이기programming/JAVA 2021. 11. 24. 00:12
테스트 코드 작성 중 메소드 이름은 영어로 적고 보여주는 이름만 따로 붙이고 싶을 때, @DisplayName 어노테이션을 사용해서 해결할 수 있다. @DisplayName이 없을 때 아래와 같은 코드를 실행하면 @Test void two_Plus_One(){ int num1 = 2; int num2 = 1; int result = num1 + num2; int expected = 3; assertEquals(expected, result); } 인텔리제이에선 아래 스크린샷처럼 보인다. @DisplayName을 작성했을 때 위의 코드에서 @DisplayName 어노테이션만 추가로 작성했다. @Test @DisplayName("2 + 1 = 3일 것인가?") void two_Plus_One(){ int n..
-
[Windows] PowerShell ssh 접속 정보 저장하기programming/OS 2021. 11. 18. 19:54
Windows PowerShell을 사용해서 ssh를 사용할 때, iterm이나 putty처럼 세션 정보를 저장해서 사용하고 싶을 때 사용할 수 있는 방법이다. 1. ps1 파일을 작성한다. 새 텍스트 파일을 만든 다음 ssh 접속 정보를 입력해준다. 그리고 확장자를 ps1으로 바꿔준다. 2. ps1 파일을 실행한다. PowerShell에서 해당 파일을 실행하면 파일에 적힌 정보로 접속이 가능하다. - 위 작성된 글에는 잘못된 부분이 있을 수 있습니다. 알려주시면 수정하겠습니다. ※ info PS : 5.1.19041.1320 OS : Windows 10 Pro 21H1
-
[MySQL/MariaDB] 소수점 특정 자릿수까지 표시하기programming/SQL 2021. 10. 28. 17:41
Mysql / MariaDB에서 소수점을 특정 자릿수까지만 표기할 경우, format을 사용해서 처리할 수 있다. SELECT format('202.123456789',3) FROM DUAL; 위와 같이 format을 사용할 경우 아래처럼 소수점 3자리까지만 표기된다. - 위 작성된 글에는 잘못된 부분이 있을 수 있습니다. 알려주시면 수정하겠습니다. ※ info DB : MySQL Client(MariaDB 10.4(x64)) OS : Windows 10 Pro
-
[Java] Queue 사용하기(add vs offer)programming/JAVA 2021. 7. 21. 21:24
Queue 사용법 Java에서 정의되어 있는 Queue를 사용해보자. 무심코 아래와 같이 작성하면 생각한 대로 작동하지 않는다. Queue queue = new Queue(); IDE를 사용해서 작성해보면 아래와 같이 자동 완성된 코드를 볼 수 있다. Queue는 인터페이스로만 제공되어서 따로 구현체를 사용해야 한다. 인텔리제이를 사용할 때는 LinkdeList 를 추천해준다. 나머진 목적에 맞게 사용하면 된다. add() 먼저 add()를 사용해서 큐에 하나씩 추가할 수 있다. public static void main(String[] args) { Queue queue = new LinkedList(); queue.add("일"); queue.add("이"); queue.add("삼"); queue...
-
[Oracle] 오라클 날짜 포맷 사용(TO_CHAR)programming/SQL 2021. 7. 20. 20:53
오라클에서 날짜를 지정한 포맷으로 출력하려면 TO_CHAR()을 사용하면 된다. SELECT sysdate ,TO_CHAR(SYSDATE, 'yyyyMMdd') dt1 ,TO_CHAR(SYSDATE, 'yyyy-MM-dd') dt2 FROM dual; 위 쿼리를 실행하면 아래와 같이 나온다. 이때 월만 따로 구하고 싶다면 아래 쿼리를 실행하면 된다. SELECT sysdate ,TO_CHAR(SYSDATE, 'MM') MONTH FROM dual; 여기서 월을 구할 때, 01,02~11,12월 과 같이 두 자리 형식을 유지해서 많이 사용하지만, 한자리 1~9월까지에서 앞의 0을 빼고 싶을 때도 있다. 이럴 때도 TO_CHAR()을 사용하면 된다. SELECT sysdate ,TO_CHAR(TO_CHAR(..