[Java]아파치 HttpClient사용하기

 

아파치 HttpClient 라이브러리는 HTTP 요청처리 단순화해 간단하게 사용할 수 있습니다.
 
[라이브러리 다운로드] 
 
HttpClient 클래스를 통해 데이터를 보낼 수 있는데, 이 클래스의 인스턴스는 DefaultHttpClient ()로 생성 합니다.
DefaultHttpClient은 표준 HttpClient이며 HTTP 연결을 처리하기 위해 SingleClientConnManager 클래스를 사용합니다.
 
HttpClient 데이터를주고받을 수있는 HttpUriRequest을 사용합니다. 
HttpUriRequest의 중요한 하위 클래스는 HttpGet 및 HttpPost 있습니다. 
 
이번시간은 HttpGet의 사용방법을 간단한 샘플 소스로 알아보도록 하겠습니다.
[샘플소스]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
 
public class HttpClientGet {
 
	/**
	 * @param args
	 */
	public static void main(String[] args) {
 
		// HttpClient 생성
		HttpClient httpclient = new DefaultHttpClient();
		try {
			// HttpGet생성
			HttpGet httpget = new HttpGet("http://forum.falinux.com");
 
			System.out.println("executing request " + httpget.getURI());
			HttpResponse response = httpclient.execute(httpget);
			HttpEntity entity = response.getEntity();
 
			System.out.println("----------------------------------------");
			// 응답 결과
			System.out.println(response.getStatusLine());
			if (entity != null) {
				System.out.println("Response content length: "
						+ entity.getContentLength());
				BufferedReader rd = new BufferedReader(new InputStreamReader(
						response.getEntity().getContent()));
 
				String line = "";
				while ((line = rd.readLine()) != null) {
					System.out.println(line);
				}
			}
			httpget.abort();
			System.out.println("----------------------------------------");
			httpclient.getConnectionManager().shutdown();
 
		} catch (ClientProtocolException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			httpclient.getConnectionManager().shutdown();
		}
	}
 
}
 
[실행결과]
httpclienget.PNG
 
위의 실행결과를 확인해보면 브자우저 주소창에 http://forum.falinux.com을 입력했을때 화면에 표시해주는 html정보를이 실행 결과로 출력됩니다.
요청에 대한 실행결과는 response.getStatusLine()으로 확인 합니다.
요청에 대한 응답이 정상일 경우 "HTTP/1.1 200 OK"와 같이 표시됩니다.
 
HttpClient라이브러를 사용하면 Java응용프로그램에서도 쉽게 web서버에 http요청과 응답을 쉽게 받을수 있습니다.
다음시간은 POST에 대해 알아보도록 하겠습니다.
 
감사합니다.
 

 

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
49 org.eclipse.ui.navigator Class CommonViewer 졸리운_곰 2019.07.04 398
48 MessageBox Example : Dialog « SWT JFace Eclipse « Java file 졸리운_곰 2019.06.16 362
47 Add Table Selection Listener and Get Selected TableItem : Table Event « SWT « Java Tutorial file 졸리운_곰 2019.06.16 372
46 Building and delivering a table editor with SWT/JFace file 졸리운_곰 2019.06.16 430
45 Demonstrates CellEditors : Table « SWT JFace Eclipse « Java file 졸리운_곰 2019.06.16 279
44 Demonstrates TableViewers : Table « SWT JFace Eclipse « Java file 졸리운_곰 2019.06.16 323
43 Eclipse RCP Tutorial: How to Add a Progress Bar file 졸리운_곰 2015.11.07 457
42 SWT Custom Widgets - Tutorial file 졸리운_곰 2015.08.23 379
41 Show a tool tip inside a rectangle : ToolTip « SWT « Java Tutorial file 졸리운_곰 2015.08.22 285
40 [SWT, Java] Tooltip example 졸리운_곰 2015.08.22 270
39 [SWT, Java], Button by Image, 이미지로 버튼 생성 졸리운_곰 2015.08.22 416
38 [SWT] Image Button 졸리운_곰 2015.08.22 277
37 [SWT] eventListener에서 부모 class (이벤트발생 클래스) 얻기 졸리운_곰 2015.08.16 340
36 [SWT] MessageBox Example file 졸리운_곰 2015.08.16 494
35 [SWT] How to create your own dialog classes file 졸리운_곰 2015.08.16 347
34 [SWT] Number Input Dialog file 졸리운_곰 2015.08.16 275
33 [SWT] Demonstrates a Canvas file 졸리운_곰 2015.08.12 268
32 SWT Control in One Example file 졸리운_곰 2015.08.10 403
31 SWT Tree With Multi columns file 졸리운_곰 2015.08.06 374
30 SWT Tree Composite 졸리운_곰 2015.08.06 289
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED