프로그래밍
-
[파이썬] eBest Xing api 실시간조회, 스레드 설계 구현 (2)프로그래밍/파이썬 2020. 2. 22. 15:25
GitHub - malchooni/EBestAPI_Python: 파이썬 학습목적의 이베스트 API 구현 파이썬 학습목적의 이베스트 API 구현. Contribute to malchooni/EBestAPI_Python development by creating an account on GitHub. github.com [파이썬] eBest Xing api 실시간조회, 멀티스레드 설계 (1) [파이썬] eBest Xing api 실시간조회, 스레드 설계 구현 (2) [파이썬] eBest Xing api 실시간조회, ThreadJob 구현 (3) [파이썬] eBest Xing api 실시간조회, ConnectionManager 구현 (4) [파이썬] eBest Xing api 실시간조회, QueryThread..
-
[파이썬] eBest Xing api 실시간조회, 멀티스레드 설계 (1)프로그래밍/파이썬 2020. 2. 22. 15:22
GitHub - malchooni/EBestAPI_Python: 파이썬 학습목적의 이베스트 API 구현 파이썬 학습목적의 이베스트 API 구현. Contribute to malchooni/EBestAPI_Python development by creating an account on GitHub. github.com [파이썬] eBest Xing api 실시간조회, 멀티스레드 설계 (1) [파이썬] eBest Xing api 실시간조회, 스레드 설계 구현 (2) [파이썬] eBest Xing api 실시간조회, ThreadJob 구현 (3) [파이썬] eBest Xing api 실시간조회, ConnectionManager 구현 (4) [파이썬] eBest Xing api 실시간조회, QueryThread..
-
apache cxf 클라이언트 생성하기프로그래밍/Web Service 2020. 2. 22. 14:55
jax-ws 웹서비스 서버 구축하기 웹서비스는 서비스에 대한 정의서(WSDL)를 발행하여 클라이언트가 그 서비스를 어떻게 이용하면 되는지 보다 쉽게 알 수 있다. 자바 웹서비스는 자바 스펙 요구서(Java Specification Request) 224번에 기� malchooni.name 웹서비스를 제공하는 서버(정보 제공자)는 WSDL을 함께 발행해준다. WSDL이란 Web Services Description Language의 약자로 ‘웹서비스에 대한 정의서’이다. 이 WSDL에는 웹서비스에 대한 구체적인 내용이 들어있다. 서비스를 제공해주는 URI, 요청과 응답에 대한 메시지 포맷, 오퍼레이션 등이 기재되어있다. 클라이언트(정보 이용자)는 WSDL을 통해 서버(정보 제공자)와 통신을 한다. Apac..
-
jax-ws 웹서비스 서버 구축하기프로그래밍/Web Service 2020. 2. 22. 14:44
웹서비스는 서비스에 대한 정의서(WSDL)를 발행하여 클라이언트가 그 서비스를 어떻게 이용하면 되는지 보다 쉽게 알 수 있다. 자바 웹서비스는 자바 스펙 요구서(Java Specification Request) 224번에 기재되어있다. JSR 224에 보면 자바 1.5 이상에서 사용할 수 있다고 한다. 어노테이션도 1.5 이상부터 지원. It will run on JavaTM 2 Platform, Standard Edition (J2SE) 1.5. 자바 웹서비스를 제공하는 심플 모듈 예제는 다음과 같은 순서로 구현하겠다. 요청 value object 구현. package test.server.webservice.vo; /** * 요청 메세지 value object. * @author ijyoon */ p..
-
HttpURLConnection을 이용한 Http 클라이언트프로그래밍/자바 2020. 2. 22. 14:29
사용자는 웹브라우저(익스플로러, 크롬, 사파리 등등)를 통해 웹서버에게 필요 URI를 요청하고 응답 값을 받는다. 웹브라우저는 그 응답 값(보통 HTML)을 해석하여 화면을 만들어준다. 이 처럼 웹서버에게 웹서비스를 제공받으려면 웹 클라이언트가 필요하다. 이 웹 클라이언트 부분을 자바에서 구현하려면 어떻게 해야 할까? 자바에서는 URLConnection이라는 추상화 클래스를 제공해준다. HttpURLConnection의 계층구조를 보면 아래와 같다. 이 중에서 HttpURLConnection을 이용하여 웹 클라이언트를 설명해보겠다. – 예제 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; im..
-
자바 네트워크 프로그램, 블록과 논블록프로그래밍/자바 2020. 2. 22. 00:22
멀티스레드 프로그래밍에서 메서드나 객체에 대해 동기화를 할 경우 다른 누군가 그 메서드를 참조하고 있다면 “해당 메서드는 블록 된다”, 라는 표현을 사용한다. ‘가로막다’의 의미로 사용되는 것인데, 동시성 제어(변수의 무결성, 기타 등등)를 위하여 필요한 것이다. 네트워크 프로그래밍으로 넘어와 이야기를 해 보겠다. 네트워크 프로그래밍에선 입출력 작업이 필요하다. 입출력 작업엔 블록 방식과 논블록 방식이 존재한다. IO와 NIO이다. 자바에서 사용하는 블록방식의 입력(INPUT) 부분은 다음과 같다. while( (read = is.read(packet)) != -1){ System.out.println("receive message, from server : " + new String(packet, 0,..
-
Spring Web ApplicationContext 갖고 오기프로그래밍/Spring Framework 2020. 2. 22. 00:16
Spring Framework 기반의 애플리케이션에선 bean 객체를 갖고 오기 위해 GenericApplicationContext 설정, 참조한다. 그렇게 생성된 context 객체의 getBean 메소드를 통해 원하는 bean 객체를 참조할 수 있다. 스프링 기반의 웹 어플리케이션에선 bean 객체를 갖고 오기 위해 어떻게 context 객체를 참조해야 할까? 스프링 기반의 웹 어플리케이션을 만들기 위해 web.xml에 리스너를 생성해준다. org.springframework.web.context.ContextLoaderListener 클래스이다. ContextLoaderListener 이 클래스는 org.springframework.web.context.ContextLoader 클래스를 상속받아 구..
-
자바 네트워크 프로그래밍, 동기와 비동기프로그래밍/자바 2020. 2. 21. 22:01
이기종 시스템 간의 연동, 통신을 위해서는 네트워크 프로그래밍이 꼭 필요하다. 자바나 기타 언어로 네트워크 연동 프로그램을 만들고자 한다면 어떻게 접근해야 할까? 네트워크 프로그래밍에서 말하는 동기와 비동기에 대해 이야기해 보고자 한다. 먼저 생각해 볼 문제는 시스템(or 노드)간 통신을 할 때 동기방식으로 할 것인가? 비동기 방식으로 할 것인가? 정하는 문제다. 쉬운 이해를 위해 동기 방식과 비동기 방식의 예를 들어보겠다. 동기방식은 A노드와 B노드 사이의 작업 처리 단위(transaction)를 동시에 맞추겠다는 뜻이다. ‘얄순이에게 예를 보자. 1) 말 춘계좌는 오천원을 뺄 생각을 하고 있다. 2) 말춘계좌는 얄 순계좌에게 오천 원을 전송한다. 3) 얄 순계좌는 오천 원이 수신되었단 걸 인지하고 말..