java 实现web 登陆

web

web登陆无非就是网页获取,cookie 的管理,post和get方式的模拟。

1.网页内容获取
java.io.InputStream in;
java.net.URL url = new java.net.URL(www.xyz.com/content.html);
java.net.HttpURLConnection connection = (java.net.HttpURLConnection)
url.openConnection();
connection = (java.net.HttpURLConnection) url.openConnection();
//模拟成IE
connection.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");
connection.connect();
in = connection.getInputStream();
java.io.BufferedReader breader =
new BufferedReader(new InputStreamReader(in , "GBK"));
String str=breader.readLine());
while(st != null){
System.out.println(str);
str=breader.readLine());
}
2.cookie管理

1.直接的方式
取得cookie:
HttpURLConnection huc= (HttpURLConnection) url.openConnection();
InputStream is = huc.getInputStream();
// 取得sessionID.
String cookieVal = hc.getHeaderField("Set-Cookie");
String sessionId;
if(cookieVal != null)
{
sessionId = cookieVal.substring(0, cookieVal.indexOf(";"));
}

发送设置cookie:
HttpURLConnection huc= (HttpURLConnection) url.openConnection();
if(sessionId != null)
{
huc.setRequestProperty("Cookie", sessionId);
}
InputStream is = huc.getInputStream();

2.利用的jcookie包(http://jcookie.sourceforge.net/ )
获取cookie:
URL url = new URL("http://www.site.com/");
HttpURLConnection huc = (HttpURLConnection) url.openConnection();
huc.connect();
InputStream is = huc.getInputStream();
Client client = new Client();
CookieJar cj = client.getCookies(huc);

新的请求,利用上面获取的cookie:

url = new URL("http://www.site.com/");
huc = (HttpURLConnection) url.openConnection();
client.setCookies(huc, cj);

3.post方式的模拟
URL url = new URL("www.xyz.com");
HttpURLConnection huc = (HttpURLConnection) url.openConnection();
//设置允许output
huc.setDoOutput(true);
//设置为post方式
huc.setRequestMethod("POST");
huc.setRequestProperty("User-Agent","Mozilla/4.7 [en] (Win98; I)");
StringBuffer sb = new StringBuffer();
sb.append("userName="+userNme);
sb.append("&password="+password);

//post信息
OutputStream os = huc.getOutputStream();
os.write(sb.toString().getBytes("GBK"));
os.close();

BufferedReader br = new BufferedReader(new InputStreamReader(huc.getInputStream()))

huc.connect();

String line = br.readLine();

while(line != null){

l

System.out.printli(line);

line = br.readLine();

}

时间: 2024-10-29 08:03:33

java 实现web 登陆的相关文章

java基于web的一个爬虫

问题描述 java基于web的一个爬虫 在第一个控件先输入一个范围数字i作为学号 然后密码是234 然后登陆 然后登陆 然后保存页面 然后for i加一 解决方案 这不算爬虫,只是一个网页抓取而已http://blog.csdn.net/zgyulongfei/article/details/7909006 要处理登录,只要带上cookie里面的session id,具体你可以用fiddler看下. 解决方案二: java写一个爬虫一个简化版的Java多线程爬虫Java开源Web爬虫

java源码-java课程设计登陆界面

问题描述 java课程设计登陆界面 java课程设计需要一个登陆界面,要包含登陆和注册,要最简单的代码,也要好理解 解决方案 参考:http://www.cnblogs.com/liwustore/archive/2013/01/01/2841492.html 解决方案二: 纯java还是web开发... 解决方案三: 对的,需要知道你是纯JAVA还是涉及到JAVAee 解决方案四: 应该是要java swing,有够懒的,这还要代码吗? 解决方案五: 是jsp的吗 首先创个Login.jsp

java停止web服务代码怎么写

问题描述 系统启动时执行一段代码进行验证验证不通过抛出异常让后让服务停止java停止web服务代码怎么写 解决方案 解决方案二:System.exit(0)解决方案三:...addWindowListener(newWindowAdapter){publicvoidwindowClosing(WindowEvente){setVisible(false);dispose();System.exit(0);}}setVisible(true);...解决方案四:System.exit会导致整个we

java模拟cookie登陆操作_java

在使用java访问URL时,如果该URL需要身份验证,那么就不能够直接访问,因为没有登陆.那么,如何解决这个问题呢? 方法是使用java模拟登陆,登陆后记录下cookie信息,在下次发起请求时时将cookie发送过去用以表明身份,这样就能够访问带有权限的URL了. 下面首先介绍使用java模拟登陆.  // 连接地址(通过阅读html源代码获得,即为登陆表单提交的URL) String surl = "http://login.goodjobs.cn/index.php/action/UserL

在Java ME平台中使用Subversion、NetBeans IDE和Sun Java System Web Server

问题 源代码管理(SCM)产品用于管理多个版本的项目文件,允许您保存新版本.恢复较旧版本以及在不同版本之间进行比较.当您在修改项目的过程中引入了bug,这将是一个非常有价值的功能.大多数较新源代码管理(SCM)产品除了可管理各文件的版本之外,还提供了在 Bell 实验室中开发的源代码控制系统(SCCS). 即使对于小型项目,每一位开发人员也应该使用源代码管理(SCM).小型项目转变成大型项目是必然的事情,虽然从工作上说仅仅需要修复错误和添加功能.跟踪和管理软件的能力是获得成功的关键因素. 应用程

WEB登陆页面设计技巧:登陆界面表现形式

文章描述:拒绝平庸:优秀WEB登录页面设计. 关于登陆估计大家每天使用的都很频繁了,每次上网都会习惯性登陆下微博,淘宝,邮箱,空间等,在每天进进出出无数门户的时候有谁又曾在密码不错误的情况下停留在WEB登陆页面看一眼呢?下面就谈谈这道不起眼的门. 从公共平台的角度看 用户活跃度是检验产品成功与否的重要指标之一,传统行业的商家极为重视门面的装潢,因为一个好的门面可以聚集人气,招揽更多的顾客.古时候的大户人家院子门口的石狮子或其他的摆件的摆放极为讲究,有一定的风水学说道理,更能彰显主人家的身份地位.

用Java实现Web服务器

一.HTTP协议的作用原理 WWW是以Internet作为传输媒介的一个应用系统,WWW网上最基本的传输单位是Web网页.WWW的工作基于客户机/服务器计算模型,由Web 浏览器(客户机)和Web服务器(服务器)构成,两者之间采用超文本传送协议(HTTP)进行通信.HTTP协议是基于TCP/IP协议之上的协议,是Web浏览器和Web服务器之间的应用层协议,是通用的.无状态的.面向对象的协议.HTTP协议的作用原理包括四个步骤: (1) 连接:Web浏览器与Web服务器建立连接,打开一个称为soc

专家称Java在WEB开发领域处境危险

web 据国外媒体报道,在3月25日召开一个有Java语言未来的研讨会上,与会专家表示,Java语言在Web及低端开发领域面临诸如Ruby等动态语言的威胁,不过,Java可以通过改进和拓展虚拟机技术迎接挑战. 在这场名为"企业Java的未来"的研讨会上,来自Java技术业界的知名专家指出了Java语言目前在低端应用.网络WEB应用开发方面的"软肋",同时对EJB(企业JavaBeans)对象技术的持久竞争力表示出质疑. 一些专家表示,随着互联网迎来Web2.0时代,

Java的网络编程:用Java实现Web服务器

web|web服务|web服务器|编程|网络 超文本传输协议(HTTP)是位于TCP/IP 协议的应用层,是最广为人知的协议,也是互连网中最核心的协议之一,同样,HTTP 也是基于 C/S 或 B/S 模型实现的.事实上,我们使用的浏览器如Netscape 或IE 是实现HTTP 协议中的客户端,而一些常用的Web 服务器软件如Apache.IIS 和iPlanet Web Server 等是实现HTTP 协议中的服务器端.Web 页由服务端资源定位,传输到浏览器,经过浏览器的解释后,被客户所看