J2EE工具类:WebClient.java
来源:互联网 发布:js清空页面div中的内容 编辑:程序博客网 时间:2024/06/05 15:39
import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;import java.net.URLEncoder;public class WebClient {public String getWebContentByGet(String urlString, final String charset,int timeout) throws IOException {if (urlString == null || urlString.length() == 0) {return null;}urlString = (urlString.startsWith("http://") || urlString.startsWith("https://")) ? urlString : ("http://" + urlString).intern();URL url = new URL(urlString);HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setRequestMethod("GET");// 增加报头,模拟浏览器,防止屏蔽conn.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)");// 只接受text/html类型,当然也可以接受图片,pdf,*/*任意,就是tomcat/conf/web里面定义那些conn.setRequestProperty("Accept", "text/html");conn.setConnectTimeout(timeout);try {if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {return null;}} catch (IOException e) {e.printStackTrace();return null;}InputStream input = conn.getInputStream();BufferedReader reader = new BufferedReader(new InputStreamReader(input,charset));String line = null;StringBuffer sb = new StringBuffer();while ((line = reader.readLine()) != null) {sb.append(line).append("\r\n");}if (reader != null) {reader.close();}if (conn != null) {conn.disconnect();}return sb.toString();}public String getWebContentByGet(String urlString) throws IOException {return getWebContentByGet(urlString, "iso-8859-1", 5000);}public String getWebContentByPost(String urlString,String data, final String charset,int timeout)throws IOException{if (urlString == null || urlString.length() == 0) {return null;}urlString = (urlString.startsWith("http://") || urlString.startsWith("https://")) ? urlString : ("http://" + urlString).intern();URL url = new URL(urlString);HttpURLConnection connection = (HttpURLConnection) url.openConnection(); // 设置是否向connection输出,因为这个是post请求,参数要放在 http正文内,因此需要设为true connection.setDoOutput(true); connection.setDoInput(true); connection.setRequestMethod("POST"); // Post 请求不能使用缓存 connection.setUseCaches(false); connection.setInstanceFollowRedirects(true); //connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");connection.setRequestProperty("Content-Type","text/xml;charset=UTF-8"); // 增加报头,模拟浏览器,防止屏蔽 connection.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 8.0; Windows vista)"); // 只接受text/html类型,当然也可以接受图片,pdf,*/*任意 connection.setRequestProperty("Accept", "text/xml");//text/html connection.setConnectTimeout(timeout); connection.connect(); DataOutputStream out = new DataOutputStream(connection.getOutputStream()); //String content = data;//+URLEncoder.encode("中文 ", "utf-8"); //out.writeBytes(content); byte[] content = data.getBytes("UTF-8");//+URLEncoder.encode("中文 ", "utf-8"); out.write(content); out.flush(); out.close();try {//必须写在发送数据的后面if (connection.getResponseCode() != HttpURLConnection.HTTP_OK) {return null;}} catch (IOException e) {e.printStackTrace();return null;} BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(),charset)); String line; StringBuffer sb=new StringBuffer(); while ((line = reader.readLine()) != null) { sb.append(line).append("\r\n"); } if (reader != null) {reader.close();}if (connection != null) {connection.disconnect();}return sb.toString();}public String getWebContentByPost(String urlString,String data) throws IOException {return getWebContentByPost(urlString, data,"UTF-8", 5000);//iso-8859-1}public static void main(String[] args) throws IOException {WebClient client=new WebClient();//get//String s = client.getWebContentByGet("http://www.baidu.com");//s = new String(s.getBytes("iso-8859-1"), "gb2312");//postString s = client.getWebContentByPost("http://localhost:8080/Lottery/login.portal","toPath=toPath&action=login&loginname=13761083826&password=111111");//s = new String(s.getBytes("iso-8859-1"), "UTF-8");System.out.println(s);}}
0 0
- J2EE工具类:WebClient.java
- J2EE工具类:DateUtil .java
- J2EE工具类:WebHttpClient.java
- J2EE工具类:CookieUtil.java
- J2EE工具类:NumberUtil.java
- J2EE工具类:DateUtil .java
- J2EE工具类:StringUtil.java
- J2EE工具类:PropertiesUtil.java
- J2EE工具类:DataBaseUtil.java
- J2EE工具类:ArrayUtil.java
- J2EE工具类:WeatherUtil.java
- J2EE工具类:DES.java
- J2EE工具类:WebHttpClient.java
- J2EE工具类:CalendarUtil .java
- J2EE工具类:ClientSocketUtil.java&ServerSocketConnection.java
- WebClient类
- WebClient 类
- J2EE工具类:MoneyUtil.java小写钱转成大写钱
- hdu2481 Toy
- htmlparser API
- 两种方式创建多线程
- J2EE工具类:WebHttpClient.java
- android面试题
- J2EE工具类:WebClient.java
- 十个数的数组(作业)
- linux中ldconfig的使用介绍
- J2EE工具类:ClientSocketUtil.java&ServerSocketConnection.java
- 归并排序
- HtmlparseUtil.java
- DESPlus+Base64+MD5Util
- 3027: [Ceoi2004]Sweet
- winform中对于form设置backgroundimage时会出现窗口无法显示的情况