JAVA/JAVA 기본
JAVA URL의 사용
엔테아
2017. 10. 11. 18:50
URL의 사용
URL의 사용 | URL url = null; InputStream in = null; try { url = new URL("http://www.naver.com"); String protocol = url.getProtocol(); System.out.println(protocol); String host = url.getHost(); System.out.println(host); int port = url.getPort(); System.out.println(port); port = url.getDefaultPort(); System.out.println(port); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { try { if(in != null) in.close(); } catch (Exception e2) { // TODO: handle exception e2.printStackTrace(); } } | |
프로토콜 | String protocol = url.getProtocol(); System.out.println(protocol); | http |
host | String host = url.getHost(); System.out.println(host); | www.naver.com |
포트(보호되어 나오지 않음) | int port = url.getPort(); System.out.println(port); | -1 |
디폴트 포트 | port = url.getDefaultPort(); System.out.println(port); | 80 |
port는 0~1023의 포트를 사용하지 말 것
URLConnection의 사용 | URL url = new URL("http://oracle.com/us/downloads/index.html"); URLConnection urlConn = url.openConnection(); urlConn.getContent(); | url의 선언 url커넥션 선언(url.오픈커넥션을 이용하여) urlConn.getContnent를 이용하여 에러 방지 |
인코딩값 받기 | String encoding = urlConn.getContentEncoding(); System.out.println(encoding); | 인코딩값을 받아오고 출력 |
사이트 자원 크기 받기 | int length = urlConn.getContentLength(); System.out.println(length); | 사이트 자원의 크기 받기 |
사이트의 키값을 통해 내용 받기
Map<String, List<String>> map = urlConn.getHeaderFields(); Set<String> set = map.keySet(); Iterator<String> it = set.iterator(); while(it.hasNext()) { String key = it.next(); List<String> val = map.get(key); System.out.println("============"); System.out.println(key); for(String x : val) { System.out.println(x); } System.out.println("============"); } |
사이트의 내용물 받기
in = urlConn.getInputStream(); while(true) { int what = in.read(); if(what == -1) break; System.out.print((char)what); } |