- 浏览: 60191 次
- 性别:
- 来自: 四川
最新评论
使用HttpURLConnection类(利用sessionId保持会话
package nj.servlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class TestServlet extends HttpServlet {
public void doPost(HttpServletRequest request,HttpServletResponse response){
HttpSession session=request.getSession();
String str=(String)session.getAttribute("name");
System.out.println("name:"+str);
session.setAttribute("name", "nj");
/*String ss=request.getHeader("Cookie");
System.out.println("session id:"+ss);*/
}
public void doGet(HttpServletRequest request,HttpServletResponse response){
this.doPost(request, response);
}
}
TestServlet.java
package nj.ws.test;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class TestConnection {
public static void main(String[] args){
//第一次连接,返回session id
String sessionId=testUrlConnection();
//第二次使用session id连接
connectionBySession(sessionId);
}
public static String testUrlConnection(){
String urlStr="Http://localhost:8080/WebServiceProject/testServlet";
OutputStream out=null;
InputStream in=null;
try {
URL url=new URL(urlStr);
HttpURLConnection con=(HttpURLConnection)url.openConnection();
con.setRequestMethod("POST");
//打印请求头信息
Map hfs=con.getHeaderFields();
Set<String> keys=hfs.keySet();
for(String str:keys){
List<String> vs=(List)hfs.get(str);
System.out.print(str+":");
for(String v:vs){
System.out.print(v+"/t");
}
System.out.println();
}
System.out.println("-----------------------");
String cookieValue=con.getHeaderField("Set-Cookie");
System.out.println("cookie value:"+cookieValue);
String sessionId=cookieValue.substring(0, cookieValue.indexOf(";"));
return sessionId;
} catch (Exception e) {
e.printStackTrace();
return null;
}finally{
try {
if(in!=null)
in.close();
if(out!=null)
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void connectionBySession(String sessionId){
InputStream in=null;
try{
String url="Http://localhost:8080/WebServiceProject/testServlet";
URL u=new URL(url);
HttpURLConnection con=(HttpURLConnection)u.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("Cookie", sessionId);
in=con.getInputStream();
}catch(Exception e){
e.printStackTrace();
}finally{
try {
if(in!=null)
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
发表评论
-
struts2 中获取 web资源的方式
2016-01-08 17:02 475在struts2中获取 web资源的方式大致可分为获取扩展 ... -
sql server、db2、oracle 存储过程动态sql语句示例
2015-01-31 19:00 1793Oracle CREATE OR REPLACE PRO ... -
ie9 中出现不明的异常(参数是必选项 (Argument not optional)、尚未实现)等
2015-01-27 23:57 1271<script type="text/jav ... -
SAXParseException: The content of element type "configuration" must match
2014-09-15 23:57 1926在mybatis的配置文件中新增加<databaseI ... -
java.lang.ClassNotFoundException: Cannot find class: DB_VENDOR
2014-09-15 23:45 1932在mybatis 中使用databaseIdProvide ... -
spring mvc3 + fastjson 转换 REST 参数以及输出
2014-03-27 00:16 4194spring 3可以支持Rest风格参数,其内置了jack ... -
eclipse中编辑log4j 的xml配置文件时,自动提示
2014-03-27 00:05 843方法1. 配置log4j.dtd文件: Windows - ... -
java json 转换之 Jackson 框架
2013-08-01 21:50 1114转自:http://www.cnblogs.com/hooj ... -
eclipse/myeclise 自定义注释中的变量名称
2013-07-01 23:18 939eclipse/myeclipse中自带了 ... -
Eclipse Class Decompiler——Java反编译插件
2012-11-08 22:41 1206Eclipse Class Decompiler,整 ... -
struts+spring+hibernate整合问题解决方法 陆续更新中....
2009-01-01 10:33 845在整合ssh过程中出现的问题和解决方法: 一、 严重: Ser ... -
DWR通过Annotation与spring整合
2009-01-21 22:05 636DWR 2.0 增加了一个很有趣的新特性,Annotat ... -
div嵌套页面 div加载页面 (其中获取目标页面的内容是用dwr框架连接java程序做的)
2009-03-15 16:58 630前段时间因为有需要,要在div中加载一个页面。但是以前没做过, ... -
tapestry autocomplete 更改样式及定位
2009-07-09 19:02 682版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文 ... -
Java中的main()方法详解
2009-07-12 16:23 611源文作者:leizhimin 源文链接:http:/ ... -
tapestry5 集成 spring 的事务管理
2009-07-22 15:43 558说明:使用的是tapestry5.1.0.5 和spring ... -
tapestry5 布局 参数的处理
2009-07-23 17:24 378<?xml version="1.0" ... -
tapestry不支持 等html特殊符号的解决方法
2009-07-23 17:34 481在使用tapestry时,偶然发现使用 &a ... -
WebService大讲堂之Axis2(1):用POJO实现0配置的WebService
2009-07-28 15:01 402转自:http://space.itpub.net ... -
WebService大讲堂之Axis2(2):复合类型数据的传递
2009-07-28 15:25 472转自:http://space.itpub.net/12921 ...
相关推荐
HttpURLConnection文件下载\httpURLConnection文件下载
HttpURLConnection的demo,里面有网络请求get post 上传文件,下载文件,介绍HttpURLConnection这个类整体流程是怎样使用的,方便初学者学习
自己写了一个基于httpurlconnection和Asynctask的例子
import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.util.List; import java.util.Map; public class HttpTest { private HttpURLConnection hc = ...
HttpUrlConnection获取json数据
HttpURLConnection使用总结示例源码
使用HttpURLConnection发送短信
代码包含了httpurlconnection基本操作,一些正常的操作。
java HttpURLConnection示例 HttpURLConnection工具
一个简单的例子,使用HttpURLConnection下载图片
封装httpurlconnection 自己动手丰衣足食
主要介绍了JAVA通过HttpURLConnection 上传和下载文件的方法,非常具有实用价值,需要的朋友可以参考下
远程连接服务器HttpURLConnection,该工具有上传到远程服务器的方法,供参考远程连接服务器HttpURLConnection,该工具有上传到远程服务器的方法,供参考
HttpURLConnection用法详解, 轻松掌握HttpURLConnection开发原理
java网络请求工具类 HttpURLConnection post请求工具类HttpURLConnection httpURLConnection = (HttpURLConnection) url .openConnection(); httpURLConnection.setRequestMethod("POST");// 提交模式
在 Android 中对 HttpURLConnection 的简单使用,仅供参考。
Android HttpUrlConnection使用方法 post and get json.
调用URL对象的openConnection( )来获取HttpURLConnection对象实例: HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 设置HTTP请求使用的方法:conn.setRequestMethod("GET"); 设置连接超时,...
使用HttpURLConnection实现断点续传
httpurlconnection, http post, http get