분류 전체보기
-
코틀린 타입 시스템 - 원시 타입Kotiln 2019. 7. 19. 17:44
코틀린 타입 시스템 - 원시 타입 원시 타입 자바는 원시 타입 (int 등) 과 참조 타입 (String 등) 을 구분하고 참조 타입이 필요한 경우 원시 타입 갑을 래퍼 타입으로 감싸서 사용한다. 코틀린은 원시 타입과 래퍼 타입을 구분하지 않으므로 항상 같은 타입을 사용한다. val i: Int = 1 val list: List = listOf(1, 2, 3)더 나아가 코틀린에서는 숫자 타입 등 원시 타입의 값에 대해 메소드를 호출할 수 있다. 대부분의 경우 코틀린의 Int 타입은 자바 int 타입으로 컴파일 된다. 컴파일이 불가능할 경우는 컬렉션과 같은 제네릭 클래스를 사용하는 경우뿐이다. null이 될 수 있는 원시타입 null 참조를 자바의 참조 타입의 변수에만 대입할 수 있기 때문에 null 이 ..
-
코틀린 타입 시스템 - null 관련Kotiln 2019. 7. 19. 16:05
null 가능성(nullability) 은 NullPointerException 오류를 피할 수 있게 돕기 위한 코틀린 타입 시스템의 특성이다. null이 될 수 있는 타입 변수의 타입 뒤에 ? 를 붙이면 null 참조를 저장할 수 있다는 뜻이다. var x: String? = null?. 안전한 호출 연산자 ?. 연산자는 null 검사와 메소드 호출을 한번의 연산으로 수행한다. var allCaps: String? = s?.toUpperCase()?: 엘비스 연산자 null 대신 사용할 디폴트 값을 지정할 때 사용한다. var str: String = s ?: "" // s가 null 이면 빈 문자열("")이다as? 안전한 캐스트 값을 대상 타입으로 변환할 수 없으면 null을 반환한다. var foo..
-
백준 문제 15552번 자바 코드알고리즘 문제 풀이 2019. 4. 25. 17:29
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class Main { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); try { int cnt = Integer.pars..
-
백준 문제 1924 번 자바 코드알고리즘 문제 풀이 2019. 4. 25. 15:08
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int month = sc.nextInt(); int day = sc.nextInt(); int [] dayOfMonth = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int count = 0; for(int i=1;i
-
spring - 문자 인증 시스템 만들기Spring 2019. 3. 17. 23:26
인터넷에서 검색할 수 있는 문자 인증 API 는 유료이거나 사업자 등록증이 필요하기 때문에 개인 프로젝트에서는 사용할 수 없습니다. 문자만 보내는 API 를 이용하여 문자 인증 기능을 만들어 보겠습니다.. 문자를 보내는 API는 청기와랩 API 를 사용하겠습니다. 청기와랩 홈페이지에서 가입 후 등록하여 API 키를 발급받으면 됩니다. 처음 등록시 500 포인트를 주어 테스트할 수 있도록 해줍니다. (sms 건당 20 포인트 차감) 프로젝트에 Apache 의 Http Component 라이브러리가 있어야 합니다. pom.xml 에 org.apache.httpcomponents httpclient 4.5.3 를 넣어줍니다. 클라이언트 받는 번호와 인증 번호를 입력하여 ajax를 이용해 서버로 전송하는 페이지..
-
JavaScript - 이미지 업로드 미리보기 만들기JavaScript 2019. 3. 9. 14:56
input 태그에서 선택한 이미지를 화면에 바로 출력하도록 해보자. 코드 input 태그에서 onchange 속성에 실행될 메소드를 정해줍니다. 메소드 내에서 FileReader 객체를 생성하고 onload 됐을 시 발생할 이벤트를 작성해줍니다. FileReader 가 로드 됐을 때 img 엘리먼트를 생성하고 src 속성을 설정해줍니다. 그리고 이미지가 들어갈 div에 넣어줍니다. 리더에서 input 태그에서 선택한 파일을 읽어오도록 설정합니다. 실행 화면 여러 이미지 미리보기 input 태그에 multiple 속성을 추가해주었고 setTumbnail 메소드 안에서 반복문을 돌려서 미리보기를 설정합니다.
-
MyBatis - selectKey 사용하기MyBatis 2019. 3. 6. 22:32
selectKey 는 insert 구문이 실행되기 전 후 로 나누어서 사용할 수 있다. 아래의 예시는 insert가 되기 전 시퀀스의 값을 받아오는 것이다. select seq_authorno.currval from dual insert int Author values (seq_authorno.nextval, #{name}) insert가 된 후 시퀀스의 값을 받아오는 예시이다. insert int Author values (seq_authorno.nextval, #{name}) select seq_authorno.currval from dual order 속성으로 구분되는 데 BEFORE 와 AFTER 가 있다. keyProperty 속성은 selectKey 구문의 결과가 저장되는 대상 프로퍼티를 적어..