本文目錄一覽:
- 1、如何用JAVA編寫一個簡單用戶登陸界面?
- 2、JAVA單用戶登錄怎麼實現
- 3、java語言實現用戶註冊和登錄
- 4、Java用戶登入問題,如果用戶登入成功,我將用戶對象存放到Session里,如果多個用戶同時登入怎麼辦?
- 5、Java製作一個用戶登錄的窗口
如何用JAVA編寫一個簡單用戶登陸界面?
什麼都不說了 直接給你代碼吧
package com.moliying.ui;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.Arrays;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class Login {
private JFrame frame = new JFrame(“登錄”);
private Container c = frame.getContentPane();
private JTextField username = new JTextField();
private JPasswordField password = new JPasswordField();
private JButton ok = new JButton(“確定”);
private JButton cancel = new JButton(“取消”);
public Login() {
frame.setSize(300, 200);
frame.setBounds(450, 300, 300, 200);
c.setLayout(new BorderLayout());
initFrame();
frame.setVisible(true);
}
private void initFrame() {
// 頂部
JPanel titlePanel = new JPanel();
titlePanel.setLayout(new FlowLayout());
titlePanel.add(new JLabel(“系統管理員登錄”));
c.add(titlePanel, “North”);
// 中部表單
JPanel fieldPanel = new JPanel();
fieldPanel.setLayout(null);
JLabel a1 = new JLabel(“用戶名:”);
a1.setBounds(50, 20, 50, 20);
JLabel a2 = new JLabel(“密 碼:”);
a2.setBounds(50, 60, 50, 20);
fieldPanel.add(a1);
fieldPanel.add(a2);
username.setBounds(110, 20, 120, 20);
password.setBounds(110, 60, 120, 20);
fieldPanel.add(username);
fieldPanel.add(password);
c.add(fieldPanel, “Center”);
// 底部按鈕
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new FlowLayout());
buttonPanel.add(ok);
buttonPanel.add(cancel);
c.add(buttonPanel, “South”);
ok.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println(username.getText().toString());
}
});
cancel.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
frame.setVisible(false);
}
});
}
public static void main(String[] args) {
// new Login();
String ss = “abbabbbaabbbccba”;
System.out.println(ss.split(“b”).length);
}
}
JAVA單用戶登錄怎麼實現
我做過的一個項目是使用XML傳輸來實現的。首先客戶端登錄請求,伺服器判斷是否合法,合法就返回一個ticket碼,客戶端需要記錄這個ticket碼,伺服器也需要將ticket記錄到資料庫裡面,以後客戶端的連接就通過ticket來判斷識別是哪個用戶。其實用XML做數據交換是肯定能實現的,只是麻煩的點,但是好處是對於C做的客戶端照樣通用。如果你只是需要簡單的登錄的話,也可以把XML交換換成HTTP請求,將用戶名和密碼放在請求報文的頭裡面。
java語言實現用戶註冊和登錄
//這個是我寫的,裡面有連接資料庫的部分。你可以拿去參考一下
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.sql.*;
class LoginFrm extends JFrame implements ActionListener// throws Exception
{
JLabel lbl1 = new JLabel(“用戶名:”);
JLabel lbl2 = new JLabel(“密碼:”);
JTextField txt = new JTextField(5);
JPasswordField pf = new JPasswordField();
JButton btn1 = new JButton(“確定”);
JButton btn2 = new JButton(“取消”);
public LoginFrm() {
this.setTitle(“登陸”);
JPanel jp = (JPanel) this.getContentPane();
jp.setLayout(new GridLayout(3, 2, 5, 5));
jp.add(lbl1);
jp.add(txt);
jp.add(lbl2);
jp.add(pf);
jp.add(btn1);
jp.add(btn2);
btn1.addActionListener(this);
btn2.addActionListener(this);
}
public void actionPerformed(ActionEvent ae) {
if (ae.getSource() == btn1) {
try {
Class.forName(“com.mysql.jdbc.Driver”);// mysql資料庫
Connection con = DriverManager.getConnection(
“jdbc:mysql://localhost/Car_zl”, “root”, “1”);// 資料庫名為Car_zl,密碼為1
System.out.println(“com : “+ con);
Statement cmd = con.createStatement();
String sql = “select * from user where User_ID='”
+ txt.getText() + “‘ and User_ps='”
+ pf.getText() + “‘” ;
ResultSet rs = cmd
.executeQuery(sql);// 表名為user,user_ID和User_ps是存放用戶名和密碼的欄位名
if (rs.next()) {
JOptionPane.showMessageDialog(null, “登陸成功!”);
} else
JOptionPane.showMessageDialog(null, “用戶名或密碼錯誤!”);
} catch (Exception ex) {
}
if (ae.getSource() == btn2) {
System.out.println(“1111111111111”);
//txt.setText(“”);
//pf.setText(“”);
System.exit(0);
}
}
}
public static void main(String arg[]) {
JFrame.setDefaultLookAndFeelDecorated(true);
LoginFrm frm = new LoginFrm();
frm.setSize(400, 200);
frm.setVisible(true);
}
}
Java用戶登入問題,如果用戶登入成功,我將用戶對象存放到Session里,如果多個用戶同時登入怎麼辦?
第一種方式,每次登錄 都需要操作資料庫,多了一些不必要的性能開銷,而且在登錄狀態下 萬一突然電腦關閉了,那就永遠都不能登錄了,可用性比較低。
但是第二種方式就不一樣了,可操作性強,很方便維護所有在線用戶的信息。
在處理登錄的login方法中,先查詢資料庫驗證下該用戶是否存在,如果存在 判斷該登錄賬戶是否已經鎖定了, 然後從application內置作用域對象中取出所有的登錄信息,查看該username賬戶是否已經登錄,如果登錄了,就友好提示下,反之表示可以登錄,將該登錄信息以鍵值對的方式保存在application中。
1、將用戶的登錄信息用一個標誌位的欄位保存起來,每次登錄成功就標記1,註銷登錄就標記為0,當標記為1的時候不允許別人登錄。
2、將用戶的登錄信息保存在application內置作用域內, 然後利用session監聽器監聽每一個登錄用戶的登錄情況。
Java製作一個用戶登錄的窗口
Java用戶登陸這塊,主要還是類:
1,邊界布局:BorderLayout。他主要分為五個布局,是JFrame(頂層容器),JDialog(創建對話框窗口的類)的默認布局方式。其最多容量為5個組件,超出5個得用其他的。設置方式為:BorderLayout.NORTH;BorderLayout.SOUTH;BorderLayout.CENTER;Borderlayout.CENTER;BorderLayout.LEFT;BorderLayout.RIGHT。
2,流式布局:FlowLayout。布局方式為從左到右,從上到下。是JPanel(輕量級容器)的默認面板布局。
3,網格布局:GridLayout。布局方式為行和列組成的網路。布局方法:setLayout(new
GridLayout(3,2,3,3));其中強兩位數字表示三行兩列,後兩位表示行與行的間距為3,列與列的間距為3.
接著,就接觸到JPanel面板。JPanel是非頂層容器,所以,一個界面只能由一個JFrame,但是可以有多個JPanel組件。其默認布局方式為流式布局。在JPanel這塊,學到了用戶登錄界面的設計。從而接觸到另外三個組件:文本框組件:JTextField;密碼框組件:JPasswordField;標籤組件:JLabel;複選框組件:JCheckBox;單選框組件:JRadioButton;按鈕組件JButton。
原創文章,作者:JMIQ,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/144144.html