标签:com http class blog style div code java string log color
1、获取主机信息
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 |
@Test public
void GetDomainInfo() throws
UnknownHostException { String domain = "www.baidu.com"; InetAddress netAddress = InetAddress.getByName(domain); // 获取主机名 System.out.println(netAddress.getHostName()); // IP地址 System.out.println(netAddress.getCanonicalHostName()); InetAddress ip2domain = InetAddress.getByAddress(new
byte[] { (byte) 115, (byte) 239, (byte) 210, (byte) 26
}); System.out.println(ip2domain.getCanonicalHostName()); System.out.println(ip2domain.getHostName()); /* * 输出: www.baidu.com 115.239.210.26 115.239.210.26 115.239.210.26 */ } |
2、URLEncode 跟 URLDecoder
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 |
// URLDecoder和URLEncoder @SuppressWarnings("deprecation") @Test public
void URLEncode() { String result = URLEncoder.encode("我是Rhythmk,你呢?"); System.out.println(result); // 输出: // %E6%88%91%E6%98%AFRhythmk%2C%E4%BD%A0%E5%91%A2%EF%BC%9F } @Test public
void URLDecoder() { String result = java.net.URLDecoder .decode("%E6%88%91%E6%98%AFRhythmk%2C%E4%BD%A0%E5%91%A2%EF%BC%9F"); System.out.println(result); /* * 输出: 我是Rhythmk,你呢? */ } |
3、POST GET 请求
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88 |
@Testpublic void Get() throws
IOException { URLConnection urlConnect; urlConnect = url.openConnection(); BufferedReader biStream = null; try
{ urlConnect.connect(); Map<String, List<String>> map = urlConnect.getHeaderFields(); for
(String key : map.keySet()) { List<String> listKey = map.get(key); for
(String k : listKey) { System.out.println("*****************"
+ k); } } biStream = new
BufferedReader(new
InputStreamReader( urlConnect.getInputStream())); String html = ""; String line = null; while
((line = biStream.readLine()) != null) { html += line; } System.out .println("************************* HTML 内容 ***********************"); System.out.println(html); } catch
(Exception e) { e.printStackTrace(); } finally
{ if
(biStream != null) { biStream.close(); } }}@Testpublic
void Post() throws
IOException { BufferedReader biStream = null; try
{ URLConnection urlConnect = url.openConnection(); // 设置通用的请求属性 urlConnect.setRequestProperty("accept", "*/*"); urlConnect.setRequestProperty("connection", "Keep-Alive"); urlConnect.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); // 发送POST请求必须设置如下两行 ,需要在connect 之前设定好 urlConnect.setDoOutput(true); urlConnect.setDoInput(true); urlConnect.connect(); // 获取URLConnection对象对应的输出流 PrintWriter out = new
PrintWriter(urlConnect.getOutputStream()); // 发送请求参数 out.print("returnUrl=http%3A%2F%2Fwww.ciwong.com%2F&username=a&password=d"); // flush输出流的缓冲 out.flush(); biStream = new
BufferedReader(new
InputStreamReader( urlConnect.getInputStream())); String html = ""; String line = null; while
((line = biStream.readLine()) != null) { html += line; } System.out .println("************************POST* HTML 内容 ***********************"); System.out.println(html); } catch
(Exception e) { e.printStackTrace(); } finally
{ if
(biStream != null) { biStream.close(); } }} |
注意:
如果先
urlConnect.connect();
然后如下设置
urlConnect.setDoOutput(true);
urlConnect.setDoInput(true);
导致异常:
java.lang.IllegalStateException: Already connected
at java.net.URLConnection.setDoOutput(URLConnection.java:849)
at
com.rhythmk.filedemo.net_demo1.Post(net_demo1.java:126) ....
Rhythmk 一步一步学 JAVA (22) JAVA 网络编程,码迷,mamicode.com
Rhythmk 一步一步学 JAVA (22) JAVA 网络编程
标签:com http class blog style div code java string log color
原文地址:http://www.cnblogs.com/rhythmK/p/3698223.html