반응형 Programing497 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. Springboot logback 설정하기, 콘솔 및 파일저장 Springboot logback 설정하기, 콘솔 및 파일저장 [spec] IDE : eclipse Mars 4.5.2 springboot version : 2.0.2 logback 설정파일 생성 src/main/resources 경로에 logback 패키지를 생성합니다. 그리고 그 내에 logback-spring.xml 파일을 생성합니다. 그리고 src/main/resource 경로에 위에서 생성한 logback 설정파일을 읽을 수 있도록 경로를 설정해 줍니다. 1 2 java# 로그 설정파일 위치 지정 logging.config=classpath:logback/logback-spring.xml cs 이제 스프링부트 프로젝트 실행 시 logback 설정파일을 읽어 로그를 남길 수 있게 되었습니다. 그럼.. Programing/Springboot 2018. 8. 17. SpringBoot Redis(Jedis) 활용 Publish/Subscribe pub/sub 구현 방법 SpringBoot Redis(Jedis) 활용 Publish/Subscribe pub/sub 구현 방법 [Spec] IDE : Eclipse Mars.2 Release (4.5.2) SpringBoot : 2.0.2.RELEASE Jedis : 2.9.0 Dependency Tool : Gradle 참고! Redis는 특정서버에 설치되었다는 가정하에 진행합니다. 용어부터 설명을 하면 Redis는 메모리 기반의 Key/value NoSQL DB 라고 생각하시면 되고 Jedis 는 자바에서 Redis를 좀더 효율적으로 사용하기 위한 클라이언트 입니다. Publish / Subscribe 는 Redis를 사용하는 주요 이유 중에 하나로, Channel에 값을 올리면(Publish) 그 체널을 바라보고 있는 .. Programing/Springboot 2018. 8. 13. Eclipse SpringBoot 프로젝트 생성, 이클립스 스트링부트 프로젝트 생성, jar 배포하기 Eclipse SpringBoot 프로젝트 생성, 이클립스 스트링부트 프로젝트 생성, jar 배포하기 이번 포스팅에서는 이클립스에서 SpringBoot 프로젝트를 생성해 HelloWord를 콘솔창에 출력하고 해당 프로젝트를 배포하는 방법에 대해서 알아보겠습니다. 우선 이클립스를 실행합니다. Package Explorer에서 마우스 오른쪽 버튼 클릭 후 New>Other.. 을 선택합니다. New 창이 나타나면, Spring>Spring Starter Project 를 선택한 후 Next New Spring Starter Project 창이 나타나면, 위와 같이 설정 후 Next Name, Group, Artifact, Description, Package는 나름에 맞게 설정해 주시고, Type, Pack.. Programing/Springboot 2018. 8. 10. 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. SpringBoot jersey2-grizzly2-swagger RESTful API example REST api 서버 개발 SpringBoot jersey2-grizzly2-swagger RESTful API example REST api 서버 개발 이번 포스팅에서는 SpringBoot 에서 jersey2, grizzly2, swagger 라이브러리를 활용하여 REST api 를 개발하는 방법을 알아보도록 하겠습니다. [SPEC] SpringBoot 2.0.2 RELEASE jersey-container-grizzly2-servlet 2.26 jersey-hk2 2.26 swagger-jersey2-jaxrs 1.5.0 [gradle] compile group: 'org.glassfish.jersey.containers', name: 'jersey-container-grizzly2-servlet', version: '2.26.. Programing/Springboot 2018. 7. 17. 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. Springboot 기반 Californium COAP 통신 서버 구현 Springboot 기반 Californium COAP 통신 서버 구현 웹 개발자로 6년간 일을 하고, 슬슬 지처가는 중에 서버를 구현해 볼 기회가 생겼습니다.! COAP 통신 서버 구현과, 기존에 있던 MFC 서버와 TCP 통신으로 데이터를 주고 받는 것이 미션이였습니다. 우선 기반 프레임워크는 SpringBoot 로 결정했고, 서버 개발자분들의 조언을 받아 고성능 비동기 네티워크 프레임워크인 Netty를 얹기로 결정했습니다. 스펙은 아래와 같습니다. Java : 1.8.0_131 IDE : eclipse Mars 4.5.2 SpringBoot : 2.0.2 dependency tool : gradle 우선 이클립스에서 SpringBoot 프로젝트를 생성합니다. Package Explorer>마우스오른.. Programing/Springboot 2018. 7. 13. Java Javascript 프로그래머스 Level1 두 정수 사이의 합 Java Javascript 프로그래머스 Level1 두 정수 사이의 합 순서에 상관없는 두 정수 사이의 값을 구하면 되는 문제입니다. Math.max() 와 Math.min() 함수를 활용해서 작은 값부터 큰값까지 반복해서 더하면 됩니다. java 풀이 1 2 3 4 5 6 7 8 9 class Solution { public long solution(int a, int b) { long answer = 0; for (int i=Math.min(a,b); i Programing/Algorithm 2018. 7. 4. JDBC, DBCP란? 웹 어플리케이션의 DB접속에 대한 고찰 JDBC, DBCP란? 웹 어플리케이션의 DB접속에 대한 고찰 자바 웹 어플리케이션에서 DB 접속과 관련된 라이브러리가 JDBC, DBCP 입니다. JDBC는 Java DataBase Connectivity 의 약자로 자바에서 데이터베이스에 연결하기 위한 인터페이스죠. Oracle, MySQL, MsSQL 등 데이터 베이스는 JDBC를 사용하기 위한 각각의 Driver를 제공합니다. JDBC는 이 Driver를 통해 DB에 접속을 합니다. 그럼 JDBC만 있으면 DB접속이 되는데 DBCP는 왜 쓰지? 라는 궁금증이 생기실 겁니다. 답은 '효율' 입니다. 효율적인 DB 커넥션을 위해 DBCP를 사용하는 것이죠. 그럼 DBCP가 뭔지 알아보겠습니다. DBCP는 DataBase Connection Pool 의.. Programing/JAVA 2018. 7. 2. Spring task scheduler Cron Expression 크론 표현식 Spring task scheduler Cron Expression 크론 표현식 이번 포스팅에서는 매번 해깔리는 크론 표현식에 대해 자세히 알아보도록 하겠습니다. 크론 표현식이 사용되는 Spring task scheduler 에 대해서는 아래의 Link를 참고하세요. Link : 주기적 클래스 실행하는 방법 자동실행 일정간격 스케쥴링 JAVA Spring task scheduler 주기적 클래스 실행하는 방법 자동실행 일정간격 스케쥴링 JAVA Spring task scheduler 주기적 클래스 실행하는 방법 자동실행 일정간격 스케쥴링 JAVA Spring task scheduler 사용자가 뭔가 명령을 내리지 않아도 클래스를 자동 실행하고 싶을 때 사용하는 것이 Sping에 task scheduler.. Programing/Spring 2018. 6. 26. Java boxing, unboxing 자바 박싱 언박싱 Wrapper Class 확실히 이해하기 Java boxing, unboxing 자바 박싱 언박싱 Wrapper Class 확실히 이해하기 이번 포스팅에서는 자바의 박싱과 언박싱에 대해 알아보겠습니다. 개발을 할때 자주 사용하지만, 박싱이 뭔지, 언박싱이 뭔지 용어를 모르는 경우가 있습니다. 이번 기회에 제대로 알고 넘어가도록 하죠. 우선 자바의 박싱과 언박싱에 대해 설명하기 위해서는 래퍼 클래스(Wrapper Class)에 대해 알아야 합니다. 래퍼 클래스가 무엇이냐.. 자바에서 수치나 논리값은 객체가 아니라 기본형으로 처리됩니다. 하지만 컬렉션 클래스에서는 기본형을 사용할 수 없죠. 예를 들어, List list = new ArrayList(); 이런 코드를 보신적은 없으실 겁니다. 이유는 컬렉션 클래스는 객체만 저장 할 수 있기 때문이죠... Programing/JAVA 2018. 6. 12. 이전 1 ··· 14 15 16 17 18 19 20 ··· 34 다음 💲 추천 글 반응형