HttpURLConnection用法详解
来源:未知 责任编辑:责任编辑 发表时间:2013-11-18 20:56 点击:次
针对JDK中的URLConnection连接Servlet的问题,网上有虽然有所涉及,但是只是说明了某一个或几个问题,是以FAQ的方式来解决的,而且比较零散,现在对这个类的使用就本人在项目中的使用经验做如下总结:
p>1:> URL请求的类别:
p>分为二类,GET与POST请求。二者的区别在于:
p> a:) get请求可以获取静态页面,也可以把参数放在URL字串后面,传递给servlet,
p> b:) post与get的不同之处在于post的参数不是放在URL字串里面,而是放在http请求的正文内。
p>
p>
p>2:> URLConnection的对象问题:
p>URLConnection的对象,如下代码示例:
p>
p>// 下面的index.jsp由<servlet-mapping>映射到
p>// 一个Servlet(com.quantanetwork.getClientDataServlet)
p>// 该Servlet的注意点下边会提到
p>
p>
p> 1 URL url = new URL("http://localhost:8080/TestHttpURLConnectionPro/index.jsp");
p> 2
p> 3 URLConnection rulConnection = url.openConnection();
p> 4 // 此处的urlConnection对象实际上是根据URL的
p> 5 // 请求协议(此处是http)生成的URLConnection类
p> 6 // 的子类HttpURLConnection,故此处最好将其转化
p> 7 // 为HttpURLConnection类型的对象,以便用到
p> 8 // HttpURLConnection更多的API.如下:
p> 9
p>10 HttpURLConnection httpUrlConnection = (HttpURLConnection) rulConnection;
p>
p>3:> HttpURLConnection对象参数问题
p>
p>
p> 1 // 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在
p> 2 // http正文内,因此需要设为true, 默认情况下是false;
p> 3 httpUrlConnection.setDoOutput(true);
p> 4
p> 5 // 设置是否从httpUrlConnection读入,默认情况下是true;
p> 6 httpUrlConnection.setDoInput(true);
p> 7
p> 8 // Post 请求不能使用缓存
p> 9 httpUrlConnection.setUseCaches(false);
p>10
p>11 // 设定传送的内容类型是可序列化的java对象
p>12 // (如果不设此项,在传送序列化对象时,当WEB服务默认的不是这种类型时可能抛java.io.EOFException)
p>13 httpUrlConnection.setRequestProperty("Content-type", "application/x-java-serialized-object");
p>14
p>15 // 设定请求的方法为"POST",默认是GET
p>16 httpUrlConnection.setRequestMethod("POST");
p>17
p>18 // 连接,从上述第2条中url.openConnection()至此的配置必须要在connect之前完成,
p>19 httpUrlConnection.connect();
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>