반응형 Programing/JAVA112 JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 4부 Map JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 4부 Map Link : JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 1부 List Link : JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 2부 Set Link : JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 3부 Queue Map은 Collection을 상속 받지 않은 저장 객체 입니다. 그렇기 때문에 사용 할 수 있는 메소드 부터가 Collection을.. Programing/JAVA 2018. 11. 14. JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 3부 Queue JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 3부 Queue Link : JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 1부 List Link : JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 2부 Set Java Collection 정리 3부. Queue에 대해서 알아보도록 하겠습니다. Queue Collection은 FIFO(First in First Out : 선입선출) 구조로 설계 되었습니다. 프로세스의 우선순위를 설정하기 위해 디자인되었죠. 예외적으로 priority qu.. Programing/JAVA 2018. 11. 14. JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 2부 Set JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 2부 Set 1부에서는 List에 대해서 알아보았습니다. Link : JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue Stream 1부 List Collection 정리 2부에서는 Set 에 대해서 다루도록 하겠습니다. List와 다르게 Set은 저장순서를 유지하는 Index를 갖지 않기 때문에 for문을 사용할 수 없고, 중복 데이터를 허용하지 않는다는 특징이 있습니다. 1) HashSet 그렇기 때문에 Java 에서는 Iterator 메소드를 제공해서 Set 내의 데이터에 접근 할 수 있도록 했습니다. 아래 코드를 보겠습니.. Programing/JAVA 2018. 11. 13. JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue Stream 1부 List JAVA Collection Framework 정리, 자바 컬렉션, List, Set, Map, Queue, Stream 1부 List 자바에서는 데이터를 저장하기 위한 저장소로 배열과 컬렉션 프레임워크를 제공합니다. 그럼 배열이 있는데 왜 컬렉션 프레임워크가 나왔을 까요? 배열의 단점이 있으니 그랬겠죠? 배열은 생성할 때 미리 데이터의 크기를 알아야 합니다. 선언과 동시에 그 크기를 설정해야만 합니다. String[] data = new String[]; 위와 같이 선언을 하면 컴파일 오류가 발생하게 되죠.; 그렇기 떄문에 선언부터 데이터의 저장, 출력, 삭제, 수정 등에 매우 많은 신경을 써야 합니다. 이번 포스팅에서는 배열의 단점을 보완한 컬렉션 '프레임워크' 에 대해서 알아보도록 하겠습니다. 컬렉.. Programing/JAVA 2018. 11. 12. Logback 특정 문자열 포함하는 메시지 제외 설정, Filter 사용법 Logback 특정 문자열 포함하는 메시지 제외 설정, Filter 사용법 지난번 포스팅에서는 Logback을 설정하는 방법을 알아보았습니다. Link : Springboot logback 설정하기, 콘솔 및 파일저장 이번 포스팅에서는 로그 메시지 중에 특정 문자열이 있을 경우 제외하는 방법을 알아보겠습니다. 저같은 경우에는 기존에는 원하는 로그만 딱딱 찍혔지만 L4를 연결 후 ping 을 체크하는 로그가 INFO 레벨로 3초에 한번씩 찍혀 제외를 하게 되었습니다. 참고 사이트 : https://logback.qos.ch/manual/filters.html 특정 문자열을 제외 하는 필터 클래스를 생성한 후 해당 클래스를 Logback appender 태그내 filter 태그로 추가 해주시면 됩니다. 그럼.. Programing/JAVA 2018. 11. 2. Java Spring boot WebSocket Client 구현 Jetty websocket-client 활용 Java Spring boot WebSocket Client 구현 Jetty websocket-client 활용 지난 포스팅에서 Spring boot 에서 Jetty WebSocket Server를 구현하는 방법을 알아보았습니다. Link : Spring boot jetty websocket 서버 개발, 웹소켓 서버 구현 이번 포스팅에서는 WebSocket Client 를 구현하는 방법을 알아보겠습니다. [Spec] Spring boot 2.1.0.RELEASE Jetty WebSocket Client 9.4.12.v20180830 gradle 우선 gradle에 Jetty websocket-client 의존성 주입을 합니다. compile group: 'org.eclipse.jetty.websocket.. Programing/JAVA 2018. 11. 1. JAVA json 객체를 VO, List<VO> 로 파싱하는 방법 json to Java Class, Json to object JAVA json 객체를 VO, List 로 파싱하는 방법 json to Java Class 예전에 json 객체를 파싱 하기 위해선 아래와 같이 Json Object, 혹은 Array 에서 데이터를 추출해야 했습니다. response = (JSONObject) jsonObj.get("response"); 하지만 Json 관련 훌륭한 라이브러리들(Gson 이라던지 jsonSimple 이라던지..)이 등장하면서 Json 객체를 Java 객체로 파싱하는 편한 메서드 들을 제공합니다. 이번 포스팅에서는 json 객체를 Java Class (VO) 로 쉽게 변환하는 방법을 알아보도록 하겠습니다. Gson 라이브러리 사용(2.8.2) [ Gradle ] compile('com.google.code.gson:gso.. Programing/JAVA 2018. 10. 30. Mybatis insert, update null 처리, 부적합한 열 유형 처리방법, Oracle Merge Mybatis insert, update null 처리, 부적합한 열 유형 처리방법 Mybatis를 활용해 insert, update 시 변수의 값이 없을 시 부적합한 열 유형 (해당 변수=null) 에러가 발생합니다. 이를 처리하기 위해서는 if 태그를 활용하는 방법과 MERGE INTO C_TS_WETHER_INFO USING DUAL ON (FRCST_DT = #{baseDate} AND WETHER_ID = #{wetherId}) WHEN MATCHED THEN UPDATE SET TMPRT = #{t1h} . . . jdbc type을 설정해 주는 방법이 있습니다. varchar형은 jdbcType=VARCHAR number형은 jdbcType=INTEGER MERGE INTO C_TS_WETH.. Programing/JAVA 2018. 10. 11. Spring Framework DBCP HikariCP 적용방법 Spring Framework DBCP HikariCP 적용방법 HikariCP GitHub : https://github.com/brettwooldridge/HikariCP Java 8 DBCP란 DB와 연결을 하는 커넥션을 미리 생성해 커넥션풀에 저장해 두었다가 필요시에 호출해서 쓰고, 사용후에는 반환하는 것입니다. DB사용시 마다 커넥션을 생성하는 방식보다 빠른 속도를 유지하고, DB커넥션의 과부화를 방지 할 수 있습니다. 우선 Pom.xml 에 의존성을 주입해 줍니다. Java version에 따라 다르니 GitHub를 참고해주세요 1 2 3 4 5 com.zaxxer HikariCP 3.1.0 cs context-datasource.xml 파일을 수정합니다. 1 2 3 4 5 6 7 8 9 10.. Programing/JAVA 2018. 9. 5. Java JCE를 이용하기 위한 개발 환경 설정, Provider 추가 Java JCE를 이용하기 위한 개발 환경 설정, HSM Provider 추가 JCE(Java Cryptography Extension) 란? JDK에 포함된 Java 보안관련 패키지, 대칭키 및 비대칭키를 사용하여 데이터 암/복호화 지원 [SPEC] window server 2012 java 1.8.0_171 HSM nCiperKM 프로바이더 추가 추가될 Jar 파일 $JAVA_HOME\jre\lib\ext 경로로 이동 프로바이더 추가 경로 $JAVA_HOME\jre\lib\security/java.security 파일을 열어 해당 프로바이더 등록 security.provider.x=프로바이더 EX) security.provider.1=sun.security.provider.Sun security.pr.. Programing/JAVA 2018. 8. 30. Java Method Overriding, Overroading 자바 메서드 오버로딩과 오버라이딩 Java Method Overriding, Overroading 자바 메서드 오버로딩과 오버라이딩 메서드 오버로딩과 오버라이딩에 대해서 알아보겠습니다. 둘을 혼동하는 사람들이 꽤 있는데, 이 둘은 '오버' 로 시작하는 것 말고는 비슷한 점이 없습니다. 우선 오버로딩은 '하나의 클래스에 이름이 같은 메서드를 파라미터의 타입과 개수만 다르게 해서 복수로 만드는 것' 을 말합니다. 간단한 예를 통해 알아보도록 하겠습니다. 1 2 3 4 5 6 7 8 9 10 public class Overloading { private static void getSum(int a, int b){ System.out.println(a+b); } public static void main(String[] args){ getSum.. Programing/JAVA 2018. 7. 26. 객체지향 프로그래밍, 자바에서 사용되는 용어 정리 객체지향 프로그래밍, 자바에서 사용되는 용어 정리 매번 개발도서를 보면서 느끼는 것이지만, 책마다 비슷하게 설명한 용어들도 있고 같은내용인데 다른 용어처럼 설명한 것도 있었습니다. 이런 용어들의 개념정립과 약간의 암기(?!)를 위해 객체지향 프로그래밍, 자바에서 사용되는 용어들을 정리해 나가려 합니다. 여러 개발도서들에서의 설명과 저만의 생각이 포함될 수 있으니 감안해서 이해하시기 바랍니다. 객체지향프로그래밍(OOP : Object Orient Programming) Object(오브젝트) 객체. 객체지향 프로그래밍에서의 개념은 '우리가 바라보는 대상', '구현해야 되는 프로그램 혹은 프로젝트', 관점에 따라 달라질 수 있다. 속성과 기능으로 구성 Class(클래스) 자바 개발자에게는 Object. 속성.. Programing/JAVA 2018. 7. 25. Java Constructor 자바 생성자 이 것만 보면 이해 끝 Java Constructor 자바 생성자 이 것만 보면 이해 끝 이번 포스팅의 주제는 생성자(Constructor) 입니다. 대부분의 책에서는 '인스턴스를 초기화 하는 메서드이다' 와 비슷하게 생성자를 정의하는데요. 위의 설명을 파해쳐(?!) 보겠습니다. 우선 인스턴스(Instance)란 메모리에 생성된 클래스를 말합니다. 어떠한 클래스를 사용하고자 할 때는 new 연산자를 사용해 메모리 상에 클래스를 생성(인스턴스화) 하고 이 생성된 주소(인스턴스의 주소)를 리턴해 레퍼런스 변수에 저장하게 됩니다. ex) 클래스명 레퍼런스변수 = new 클래스명(); 여기서 바로 생성자가 사용됩니다.! 어...어디 있다는 거지...요...? 우변을 자세히 보도록 하겠습니다. new 클래스명(); 분명 우리는 괄호().. Programing/JAVA 2018. 7. 25. JAVA 자바 용어 정리, 객체지향 용어 정리, Object, Class, Instance JAVA 자바 용어 정리, 객체지향 용어 정리, Object, Class, Instance 이번 포스팅에서는 객체지향 프로그래밍 언어인 자바의 기본적인 용어에 대해서 정리하는 시간을 갖어보겠습니다. 저도 마찮가지고 대부분의 교육과정 혹은 학과과정에서도 객체지향 언어인 자바에서 사용하는 언어들에 대한 정확한 개념을 설명하지 않고 코드만 작성하여 용어를 대충 유추(?!) 하여 사용하는 경우가 많습니다. 예를들어 객체지향프로그래밍(Object Orient Programming)에서 Object가 뭘 의미하냐 라는 질문에 정확한 답을 낼 수 있는 경력자가 몇이나 있을까요? 클래스가 뭔가? 인스턴스가 뭔가 라는 질문도 마찮가지 입니다. 그래서 이번 포스팅의 목적은 객체지향프로그래밍 언어인 자바에서 사용하는 용어에.. Programing/JAVA 2018. 7. 24. Java CBOR parsing, CBOR to JSON Object Java CBOR parsing, CBOR to JSON Object CBOR 타입에 대한 설명은 아래의 Link를 참고하세요. Link : http://cbor.io/impls.html 어떤 문제인지는 모르겠지만, co.nstant.in 에서 제공하는 CBOR 디코더를 사용하면, Boolean Type의 데이터가 SIMPLE_VALUE 로 디토딩 되는 문제가 있었습니다. 예) compile group: 'co.nstant.in', name: 'cbor', version: '0.4' Link : JAVA COBR 파싱 CBOR이란 Concise Binary Object Representation 그래서 jackson에서 제공하는 라이브러리를 활용하니 디코드가 잘 되더군요. 2개의 라이브러리가 필요합니다... Programing/JAVA 2018. 7. 13. 이전 1 2 3 4 5 6 7 8 다음 💲 추천 글 반응형