快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

java登陆网页代码,Java web登录

Java如何实现网页程序自动登录

之前,也考虑过使用单点登录,几经尝试之后还是放弃了。

鸡东ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

我习惯使用Java,本能地开始寻找Java的解决方法,在Google中输入"Java自动登录"、"Java网页模拟登录"、"JavaPost登录",结果倒是不少,内容也差不多,我尝试很多次终究也没有达到我预期的目标。后来,我都不知道这些代码应该在jsp页面中执行还是在c/s结构的程序中执行。但这些代码确实管用。 我们先分析一下代码: URLurl=newURL(surl); URLConnectionconn=url.openConnection(); conn.setDoOutput(true); OutputStreamWriterout=newOutputStreamWriter(conn.getOutputStream()); Stringstr="username=yournamepassword=123456"; out.write(str); out.flush(); out.close(); 到这里,如果在C/S结构中,且参数正确,程序能够成功登录到这个oa系统,要看到结果,你可以通过下面的代码将系统服务器返回的结果System.out.println()出来。 Stringsling=""; Stringscontent=""; BufferedReaderin=newBufferedReader(newInputStreamReader(conn.getInputStream(),"UTF-8")); while((sling=in.readLine())!=null) scontent+=in+"\r\n"; System.out.println(scontent); 在C/S结构下,可以到得到控制台输出了返回值,从返回内容里可以看出程序已经成功登录,但要是把这个网址浏览器打开,还是得重新登录,问题没有得到根本解决。如果只是恶意注册,到这里应该就达到目的了。 看样子C/S结构下不容易实现网页程序自动登录,除非你在C/S程序中内嵌一个浏览器,直接在这个浏览器中自动访问系统,应该没有别的方法,主要问题在于我们没有办法共享Session. 为了便于共享Session,我们只能在浏览器中实现网页自动登录,通过上面的代码在jsp页面中测试,达不到预期目标。 网页自动登录,就是希望程序自动填充用户名和密码,然后以Post方式提交给登录页面的Form所指向的action页面或方法。我将系统的登录页面的源代码保存成一个网页,然后在username和password文本框中设置默认值,然后通过这网页登录系统,测试后,发现可行。接下来,你可能已经想到了解决方法。 我们可以通过url.openConnection()建立连接,将返回的scontent打印出来,然后接着打印以下代码: out.println("\r\n"); out.println("document.getElementsByName(\"username\")[0].value=yourname;\r\n"); out.println("document.getElementsByName(\"password\")[0].value=123456;\r\n"); out.println("document.forms[0].submit();\r\n"); out.println("\r\n"); 原理很简单,通过login.jsp将登录页面的全部源代码写在当前页面,然后使用javascript脚本将用户名和密码的值填充上,最后提交表单。这样中,终于实现了自动登录的目标。现在我通过一个特殊的网址,就可以自动访问这个oa了。 你可能注意到参数url,他的值是经过加密的,内容是用户名和密码。当然,你也可以加上有效期,即在有效期内这个链接才是有效的,才可以实现自动登录。

JAVA类如何打开网页?

JAVA中的类是具备某些共同特征的实体的集合,它是一种抽象的概念,用程序设计的语言来说,类是一种抽象的数据类型,它是对所具有相同特征实体的抽象。所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个对象,对象是一种具体的概念。JAVA类打开网页有以下方法:

1、java.net.URI uri = new java.net.URI("");

java.awt.Desktop.getDesktop().browse(uri);

2、Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler ");

这两种方法是可以打开,不过只能在服务端打开,如果有另一台机器访问我的机器,执行上边的程序后,也会在我本机显示baidu的页面。

3、如果是让他自动打开可以用robot类模拟鼠标单击右键双击等动作,还可以模拟输入。

4、如果要在网页做复杂操作可以用swt做一个浏览器,可以控制他执行网站里的脚本,这个比较难点。

用java怎样编写登录页面,成功登录跳转到下一个页面,求代码

说说servlet里面的方法:

public void ValidateUserPass(String user,String pass){

RequestDispathcher rd =null

//假使你的代码是从DB中获取

DBFactory db=DBFactoryImpl.getDBFactoryInstance();//得到数据库链接

flg=db.findUser(user,pass);

// 这里是不存在用户

if(flg.hasNext()==-1){

// 登录时错误了,一般我们会给用户一个提示

session.setAttirbute("msg","对不起,用户名或密码错误");

RequestDispathcher rd = req.getRequesDispatcher("login.jsp");

rd.forward(request, reponse);//将请求对象和响应对象传递进来

}   // 这里是存在当前用户

else{

//当然这里登录成功时,我们要把当前用户写到session里面保存

session.setAttirbute("userName",user);

//这个请求转发语句

request.sendRedirect("index.html");

}

}

// * 上述代码,你可以参考下我的方法,我也很久没做JAVA开发了,我现在从事前端UI开发,本来我想在写一个用struts 2登录的程序的,可我现在忘得差不多了,上面我所用到的属性建议你自己好好的研究一下,往后你将学到struts2 hibernate,Spring等一系列优秀的开源框架,说白了,这些东西的底层还是这些,只不过这些框架做了一些封装隔离。上述代码建议你重点理解一下:请求转发和重定向的区别。

用java做好的登陆界面,当登陆成功后跳转到下个页面的代码是什么?

用java做好的登陆界面,当登陆成功后跳转到下个页面的代码如下:

如果登陆验证是在jsp中,那么跳转可以写成

1.response.sendRedirct("跳转到页面");

2.jsp:forward page="跳转页面"/

3.response.setHeader("Location","");

如果是登陆验证是在servlet中,那么中转可以写成

1.response.sendRedirect("/a.jsp");

2.RequestDispatcher dispatcher = request.getRequestDispatcher("/a.jsp");

dispatcher .forward(request, response);

也可以使用js代码实现:

script

function validate(){

window.location.href="/index.jsp";

}

/script

java编写登陆注册页面(简单一点的,连接数据库)

这是我自己做的一个管理系统的登录界面,代码虽然有点繁琐,不过简单易懂,你根据自己的需要进行修改吧。

import java.awt.Dimension;

import java.awt.GridLayout;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.swing.JDialog;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

/**

*

* @author mzhe

*

*/

class Loginfrm extends JDialog implements ActionListener

{

JLabel l_name,l_pass,l_error;

JTextField t_name;

JButton b_enter,b_cancle,b_clear;

JPanel pan1,pan2,pan3,pan4;

JPasswordField t_pass;

String sname,spass;

int sunit;

NetConn sql;

Statement sqll;

ResultSet rs;

Librarybox lbox;

int until=0;

Loginfrm(JFrame f,String s)

{

//界面布局

super(f,s);

l_name=new JLabel("名字:");

l_pass=new JLabel("密码:");

l_error=new JLabel("请输入用户名和密码登录");

t_name=new JTextField("",10);

t_pass=new JPasswordField("",10);

t_pass.setEchoChar('*');

b_enter=new JButton("确定");

b_enter.addActionListener(this);

b_cancle=new JButton("取消");

b_cancle.addActionListener(this);

b_clear=new JButton("清除");

b_clear.addActionListener(this);

pan1=new JPanel();

pan2=new JPanel();

pan3=new JPanel();

pan4=new JPanel();

pan1.add(l_name);pan1.add(t_name);

pan2.add(l_pass);pan2.add(t_pass);

pan3.add(l_error);

pan4.add(b_enter);pan4.add(b_cancle);pan4.add(b_clear);

setLayout(new GridLayout(4,1));

add(pan1);add(pan2);add(pan3);add(pan4);

//建立数据库连接

sql=new NetConn();

//设置窗口大小

setSize(300,300);

setVisible(false);

//得到屏幕信息以便使框架居中显示

Dimension screeSize = Toolkit.getDefaultToolkit().getScreenSize();

int screeWidth=screeSize.width;

int screeHeight=screeSize.height;

//得到框架的大小信息

Dimension frameSize=this.getSize();

int x=(screeWidth-frameSize.width)/2;

int y=(screeHeight-frameSize.height)/2;

this.setLocation(x, y);

}

public void actionPerformed(ActionEvent e)

{

//单击确定按钮的事件处理程序

if(e.getSource()==b_enter)

{

//如果连续登录次数小于4

if(until=4)

{

//如果用户名或者密码为空,将显示提示信息

if(t_name.getText().equals("")||t_pass.getText().equals(""))

{

l_error.setText("用户名和密码不能为空");

}

else

{

try

{

sqll=sql.connect();

//根据用户名查询

rs=sqll.executeQuery("SELECT * FROM users where username="+"'"+t_name.getText()+"'");

//遍历查询得到的结果集

while(rs.next())

{

sname=rs.getString(2);

spass=rs.getString(3);

//得到登录用户的级别

sunit=Integer.parseInt(rs.getString(4));

//如果密码正确

if(t_pass.getText().equals(spass))

{

//判断用户的级别,根据不同的级别,显示不同的菜单

switch(sunit)

{

case 1:

{

l_error.setText("登录成功");

t_name.setText("");

t_pass.setText("");

lbox=new Librarybox();

lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

lbox.setResizable(false);

lbox.bookfi.setEnabled(true);

lbox.bookse.setEnabled(true);

lbox.bookth.setEnabled(true);

lbox.bookfo.setEnabled(true);

lbox.mi_system_manger.setEnabled(true);

lbox.mi_system_login.setEnabled(false);

lbox.setVisible(true);

this.dispose();

break;

}

case 2:

{

l_error.setText("登录成功");

t_name.setText("");

t_pass.setText("");

lbox=new Librarybox();

lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

lbox.setResizable(false);

lbox.bookfi.setEnabled(false);

lbox.bookse.setEnabled(false);

lbox.bookth.setEnabled(true);

lbox.bookfo.setEnabled(false);

lbox.mi_system_manger.setEnabled(false);

lbox.mi_system_login.setEnabled(false);

lbox.setVisible(true);

this.dispose();

break;

}

case 3:

{

l_error.setText("登录成功");

t_name.setText("");

t_pass.setText("");

lbox=new Librarybox();

lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

lbox.setResizable(false);

lbox.bookfi.setEnabled(true);

lbox.bookse.setEnabled(false);

lbox.bookth.setEnabled(false);

lbox.bookfo.setEnabled(true);

lbox.mi_system_manger.setEnabled(false);

lbox.mi_system_login.setEnabled(false);

lbox.fi_msglabel_user.setEnabled(false);

lbox.setVisible(true);

this.dispose();

break;

}

}

}

else

{

l_error.setText("用户名或密码错误!");

until++;

}

}

}

catch(SQLException e2)

{

e2.printStackTrace();

}

}

}

//超出登录次数

else

{

l_error.setText("你已经超出登录次数");

t_name.setEnabled(false);

t_pass.setEnabled(false);

b_enter.setEnabled(false);

b_clear.setEnabled(false);

}

}

//单击清除按钮的事件处理程序

else if(e.getSource()==b_clear)

{

t_name.setText("");

t_pass.setText("");

l_error.setText("请输入用户名和密码登录");

}

//单击取消按钮的事件处理程序

else if(e.getSource()==b_cancle)

{

dispose();

}

}

}

如果你比较认可的话,请采纳吧,不给分也没关系。只希望对你有用。


当前文章:java登陆网页代码,Java web登录
网站路径:http://6mz.cn/article/hojohe.html

其他资讯