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

网站建设知识

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

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

java权限登录代码 java登录功能代码

用java写一个登陆界面代码。

概述

为冀州等地区用户提供了全套网页设计制作服务,及冀州网站建设行业解决方案。主营业务为成都网站设计、网站制作、冀州网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

具体框架使用jframe,文本框组件:JTextField;密码框组件:JPasswordField;标签组件:JLabel;复选框组件:JCheckBox;单选框组件:JRadioButton;按钮组件JButton。

登录界面:

代码实例

import javax.swing.*;

import java.awt.*;   //导入必要的包

public class denglu extends JFrame{

JTextField jTextField ;//定义文本框组件

JPasswordField jPasswordField;//定义密码框组件

JLabel jLabel1,jLabel2;

JPanel jp1,jp2,jp3;

JButton jb1,jb2; //创建按钮

public denglu(){

jTextField = new JTextField(12);

jPasswordField = new JPasswordField(13);

jLabel1 = new JLabel("用户名");

jLabel2 = new JLabel("密码");

jb1 = new JButton("确认");

jb2 = new JButton("取消");

jp1 = new JPanel();

jp2 = new JPanel();

jp3 = new JPanel();

//设置布局

this.setLayout(new GridLayout(3,1));

jp1.add(jLabel1);

jp1.add(jTextField);//第一块面板添加用户名和文本框

jp2.add(jLabel2);

jp2.add(jPasswordField);//第二块面板添加密码和密码输入框

jp3.add(jb1);

jp3.add(jb2); //第三块面板添加确认和取消

//        jp3.setLayout(new FlowLayout());  //因为JPanel默认布局方式为FlowLayout,所以可以注销这段代码.

this.add(jp1);

this.add(jp2);

this.add(jp3);  //将三块面板添加到登陆框上面

//设置显示

this.setSize(300, 200);

//this.pack();

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

this.setTitle("登陆");

}

public static void main(String[] args){

new denglu();

}

}

拓展内容

java swing包

Swing 是一个为Java设计的GUI工具包。

Swing是JAVA基础类的一部分。

Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。

Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意面板。轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。

概念解析:

JFrame – java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化、最小化、关闭。

JPanel – Java图形用户界面(GUI)工具包swing中的面板容器类,包含在javax.swing 包中,可以进行嵌套,功能是对窗体中具有相同逻辑功能的组件进行组合,是一种轻量级容器,可以加入到JFrame窗体中。。

JLabel – JLabel 对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在其显示区内垂直居中对齐。默认情况下,只显示文本的标签是开始边对齐;而只显示图像的标签则水平居中对齐。

JTextField –一个轻量级组件,它允许编辑单行文本。

JPasswordField – 允许我们输入了一行字像输入框,但隐藏星号(*) 或点创建密码(密码)

JButton – JButton 类的实例。用于创建按钮类似实例中的 "Login"。

java 登录时 的权限 问题?怎么设置?

在web应用中,对页面的访问控制通常通过程序来控制,流程为:

登录 - 设置session - 访问受限页面时检查session是否存在,如果不存在,禁止访问

对于较小型的web应用,可以通过tomcat内置的访问控制机制来实现权限控制。采用这种机制的好处是,程序中无需进行权限控制,完全通过对tomcat的配置即可完成访问控制。

为了在tomcat页面设置访问权限控制,在项目的WEB-INFO/web.xml文件中,进行如下设置:

Java代码 复制代码

1. web-app

2. !--servlet等其他配置--

3. security-constraint

4. web-resource-collection

5. web-resource-nameMy Test/web-resource-name

6. url-pattern/admin/*/url-pattern

7. /web-resource-collection

8. auth-constraint

9. role-namerole1/role-name

10. role-nametomcat/role-name

11. /auth-constraint

12. /security-constraint

13. login-config

14. auth-methodBASIC/auth-method

15. realm-nameMy Test/realm-name

16. /login-config

web-app

!--servlet等其他配置--

security-constraint

web-resource-collection

web-resource-nameMy Test/web-resource-name

url-pattern/admin/*/url-pattern

/web-resource-collection

auth-constraint

role-namerole1/role-name

role-nametomcat/role-name

/auth-constraint

/security-constraint

login-config

auth-methodBASIC/auth-method

realm-nameMy Test/realm-name

/login-config

其中,url-pattern中指定受限的url,可以使用通配符*,通常对整个目录进行访问权限控制。

auth-constraint中指定哪些角色可以访问url-pattern指定的url,在role-name中可以设置一个或多个角色名。

使用的角色名来自tomcat的配置文件$/conf/tomcat-users.xml。

login-config中设置登录方式,auth-method的取值为BASIC或FORM。如果为BASIC,浏览器在需要登录时弹出一个登录窗口。如果为FORM方式,需要指定登录页面和登录失败时的提示信息显示页面。

使用FORM方式的配置样例如下:

Java代码 复制代码

1. login-config

2. auth-methodFORM/auth-method

3. realm-nameExample Form-Based Authentication Area/realm-name

4. form-login-config

5. form-login-page/login.jsp/form-login-page

6. form-error-page/error.jsp/form-error-page

7. /form-login-config

8. /login-config

login-config

auth-methodFORM/auth-method

realm-nameExample Form-Based Authentication Area/realm-name

form-login-config

form-login-page/login.jsp/form-login-page

form-error-page/error.jsp/form-error-page

/form-login-config

/login-config

其中的form-login-page指定登录页面url,form-error-page指定登录失败时的提示页面url。

登录页面中,form的action,以及其中的用户名和密码两个参数的名称,都应取固定的值。登录的后台处理程序为j_security_check;用户名和密码的参数名称分别为:j_username和j_password。

如下是登录页面(如:login.jsp)的一段示例代码:

Java代码 复制代码

1. form method="POST" action='%= response.encodeURL("j_security_check") %'

2. table border="0" cellspacing="5"

3. tr

4. th align="right"Username:/th

5. td align="left"input type="text" name="j_username"/td

6. /tr

7. tr

8. th align="right"Password:/th

9. td align="left"input type="password" name="j_password"/td

10. /tr

11. tr

12. td align="right"input type="submit" value="Log In"/td

13. td align="left"input type="reset"/td

14. /tr

15. /table/form

在JAVA中实现限制登陆次数的代码,超过三次确定键将不能用

import java.awt.event.*;

import java.awt.*;

import javax.swing.*;

import java.sql.*;

public class Login extends JFrame implements ActionListener{

JButton button1,button2;

static JTextField text1,text2;

JPanel panel1,panel2,panel3,panel4,panel5;

Container con1;

int count=0;//密码输入次数计数器

Login()

{

super("用户登陆");

text1=new JTextField(10);

text2=new JPasswordField(10);

button1=new JButton("提交");

button2=new JButton("取消");

panel1 = new JPanel();

panel2 = new JPanel();

panel3 = new JPanel();

panel4 = new JPanel();

panel5 = new JPanel();

setLocation(350,250);

con1=getContentPane();

con1.setLayout(new GridLayout(5,1));

con1.setPreferredSize(new Dimension(300,250));

panel1.add(new JLabel(""));

panel2.add(new JLabel("用户名:"));

panel2.add(text1);

panel3.add(new JLabel("密 码:"));

panel3.add(text2);

panel4.add(button1);

panel4.add(button2);

panel5.add(new JLabel(""));

con1.add(panel1);

con1.add(panel2);

con1.add(panel3);

con1.add(panel4);

con1.add(panel5);

addWindowListener(new WindowAdapter()

{ public void windowClosing(WindowEvent e)

{ setVisible(false);

System.exit(0);

}

});

button1.addActionListener(this);

button2.addActionListener(this);

this.setResizable(false);

setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==button1)

{

try{登陆();}

catch(SQLException ee){}

}

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

{

退出销售系统();

}

}

public void 登陆() throws SQLException

{

Database db=new Database();

if(count3)

{

if(db.check())

{

JOptionPane.showMessageDialog(this,"登陆成功!","提示对话框",JOptionPane.WARNING_MESSAGE);

setVisible(false);

MainFrame f=new MainFrame();f.pack();

}

else

{

count++;

if(count3)

{

JOptionPane.showMessageDialog(this,"登陆失败!","提示对话框",JOptionPane.WARNING_MESSAGE);

}

else

{

JOptionPane.showMessageDialog(this,"密码错误超过3次!","警告对话框",JOptionPane.WARNING_MESSAGE);

System.exit(0);

}

}

}

else

{

JOptionPane.showMessageDialog(this,"密码错误超过3次!","警告对话框",JOptionPane.WARNING_MESSAGE);

System.exit(0);

}

}

public void 退出销售系统()

{

System.exit(0);

}

}


当前名称:java权限登录代码 java登录功能代码
分享路径:http://6mz.cn/article/dohddph.html

其他资讯