Engineering WIKI/Java9 [Java] 랜덤번호 이용한 인증번호 기능 생성 회원가입에 필요한 숫자 OR 문자 인증번호와 임시 비밀번호를 생성하여 제공하기 위해 간단한 함수를 만들어 보았습니다. 만든 기능은 총 3가지입니다. 1. 숫자 인증번호 생성 2. 문자+숫자 인증번호 생성 3. 임시 비밀번호(문자+숫자+특수문자 포함) 생성 전반적으로 임의의 랜덤한 값을 생성하기 위해 Random Class를 사용하였고, 중복 방지를 위해 생성자에 System.currentTimeMillis()를 넣었습니다. 1. 숫자 인증번호 생성 기본적으로 숫자 인증 번호를 6자리로 생성하였고, setter을 통해서 자리수 변경이 가능합니다. 인증번호 자리수를 제곱하여 range를 구하고 자리수의 -1을 하여 10을 다시 제곱하여 trim값으로 설정하였습니다. import java.util.Random.. 2020. 12. 23. [Java] 소켓 통신이란? [자바 코드 포함] 소켓 이란? 소켓 → 프로토콜, ip주소, 포트넘버로 정의 됨. 떨어져 있는 두 호스트를 연결해주는 도구로써 인터페이스 역할. 데이터를 주고 받을 수 있는 구조체로 소켓을 통해 데이터 통로가 만들어 진다. 소켓의 역할에 따라 클라이언트 소켓, 서버소켓으로 구분된다. 소켓 통신의 흐름 서버 클라이언트 소켓의 연결 요청을 대기하고, 연결요청이 오면 클라이언트 소켓을 생성하여 통신이 가능하게 한다. socket()함수를 이용하여 소켓 생성 bind()함수로 ip와 port 번호 설정 listen()함수로 클라이언트의 접근 요청에 수신 대기열을 만들어 몇 개의 클라이언트를 대기 시킬지 결정. accept()함수를 사용하여 클라이언트와의 연결을 기다림. 클라이언트 실제로 데이터 송수신이 일어나는 것은 클라이언트 .. 2020. 12. 6. [Java] Mybatis $, # 차이 mapper 파일에서 parameter를 $와 # 차이점 $ 는 '' 2020. 6. 11. [Java] JAVA CASTING 문자 → 숫자 1. String to Int 가장 많이 사용한다고 생각됩니다. 자바 Integer클래스의 parseInt함수와 valueOf 함수로 변환 시켜줄 수 있습니다. String s_num = "10"; int i_num = Integer.parseInt(s_num); //String -> Int 1번방식 int i_num2 = Integer.valueOf(s_num); //String -> Int 2번방식 2. String to Double, Float 자바 Long, Double, Float 클래스의 parseLong함수와 valueOf 함수로 변환 시켜줄 수 있습니다. //Double.valueOf(String값) //Float.valueOf(String값) String s_num = "1.. 2020. 3. 29. [ibatis] 다중 property 처리 [ibatis] 다중 property isEmpty/isNotEmpty 처리 예제 iBatis 에서 isEmpty/isNotEmpty 를 이용하여 multiple property 로 처리하는 예제 (아래) 멀티 nested tag 를 사용하여 해결 가능 select * from table where date_start >= #startDate# AND date_end > 2020. 3. 9. [Java] String, StringBuffer, StringBuilder 개념 뿌수기! String 가변 여부 : 불변 (Immutable) Thread-safe : True 연산 속도 : 느림 저장 위치 : String Constant Pool (리터럴 생성) 사용 : 문자열 추가 연산이 적고, Thread-safe 환경 정리 : String은 Immutable 하기 때문에, 멀티 쓰레드 환경에서 사용해도 문제가 없다. 하지만 문자열을 수정 하는 경우 새로운 String 인스턴스가 생기므로 문자열 연산을 많이 하는 경우 객체 수가 늘어나 성능이 떨어진다. String str = "hello"; str = str + " world"; // 두번째 줄 연산에 의해 기존 str이 가지고 있던 "hello" 메모리는 GC 대상이 되고, // 새로운 메모리에 "hello world"가 올라간다. .. 2019. 8. 23. 이전 1 2 다음