(공부) 연결

2024. 6. 5. 15:55·JAVA

ㅜ

연결

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

import com.google.gson.Gson;

public class api {

	public static void main(String[] args) throws IOException {
		
		Gson gson = new Gson();
		
		
		
		// 객체 생성
		URL url = new URL("https://jsonplaceholder.typicode.com/todos/1");
		
		HttpURLConnection conn = (HttpURLConnection)url.openConnection();
	
		conn.setRequestMethod("GET"); // 서버에게 자원 요청
		//받는 API에 따라 맞는 content-Type을 정해주면된다.
		conn.setRequestProperty("Content-type", "application/www-from-json");
		System.out.println("Respons code : " + conn.getResponseCode());
	
		BufferedReader rd;
		
		if(conn.getResponseCode() >= 200 && conn.getResponseCode() <= 300) {
			rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
			
		} else {
			rd = new BufferedReader(new InputStreamReader(conn.getErrorStream()));
		}
		StringBuilder sb = new StringBuilder();
		String line;
		while((line = rd.readLine()) != null) {
			sb.append(line);
		}
		rd.close();
		conn.disconnect(); // 서버 연결 끊기
//		System.out.println(sb.toString());
		apitest studentObject =  gson.fromJson(sb.toString(), apitest.class); // 객체 생성 --> new.. 대체 라고 생각해도..
		
		System.out.println(studentObject.getTitle());
	}
	
}
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor 
@Builder

public class apitest {
	
	int userId;
	int id;
	String title;
	boolean completed;
	
	
}

 

변수 이름 그대로 적어 줘야 됨

샐행 결과______

▶ // System.out.println(sb.toString());

이거 출력 

System.out.println(studentObject.getTitle());

▶ 원하는 값만 출력할 수 있음

'JAVA' 카테고리의 다른 글

파싱이란 뭘까?(JSON 파싱 )  (0) 2024.06.07
JSON 파싱 연습  (0) 2024.06.07
[JAVA] 네트워크 프로토콜  (0) 2024.05.24
[JAVA] 1: N 소켓 양방향 통신  (1) 2024.05.24
[JAVA] 1:1 양방향 통신(채팅 기본 기능 구현)  (0) 2024.05.24
'JAVA' 카테고리의 다른 글
  • 파싱이란 뭘까?(JSON 파싱 )
  • JSON 파싱 연습
  • [JAVA] 네트워크 프로토콜
  • [JAVA] 1: N 소켓 양방향 통신
미로910
미로910
개발자를 꿈꾸는 민경이의 기록 블로그
  • 미로910
    개발 note
    미로910
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 설치 메뉴얼
      • HTML
      • JAVA
        • Java 기초
        • Java 응용
        • 자료구조
        • HTTP
        • JSP 프로그래밍
      • MySQL
        • MySQL 기본
        • 1일 1쿼리
      • CSS
      • Spring boot
      • JS
        • 게시판 만들기
      • Git
      • Flutter
        • MVVM 활용
        • 심화 버전
        • 1일 1 Flutter
      • 디자인 패턴의 활용
      • error note
      • My Project
        • [졸작] LLM 기반 특허 유사도 분석 시스템
        • 도서 관리 프로그램 (final project)
        • amigo
        • 친구 매칭 프로그램(FMP)
      • Python
      • 딥러닝
      • 네트워크
      • 공부 노트
        • 연구회
        • 자료구조
      • 기타
  • 블로그 메뉴

    • 홈
    • 전체보기
    • -----------------------
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Flutter
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
미로910
(공부) 연결
상단으로

티스토리툴바