導航:首頁 > 編程語言 > java用戶登錄驗證

java用戶登錄驗證

發布時間:2022-07-15 20:34:26

java問題:實現用戶登錄身份驗證功能拜託了各位 謝謝

這是問題1後台的,我實在不願意從頭到尾都幫你寫了,希望這段代碼能給你啟發,有問題可以問,可是你這樣把所有問題都拋出來,實在對你的學習不利,希望你明白這個道理 package com.long1; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; import java.util.ArrayList; import java.util.List; public class MyJdbc { private Connection con = null; private PreparedStatement ps = null; private Statement st = null; private ResultSet rs = null; private String url = "jdbc:mysql://localhost:3306/snake_db1"; private String name = "root"; private String pass = "123456789"; private String driver = "com.mysql.jdbc.Driver"; public MyJdbc() { try { Class.forName(driver); } catch (Exception e) { e.printStackTrace(); } } private void open() { try { con = DriverManager.getConnection(url, name, pass); } catch (Exception e) { e.printStackTrace(); } } public List<Login> query() { ArrayList<Login> arr = null; try { open(); st = con.createStatement(); rs = st.executeQuery("select * from login where flag!=0"); Login l = null; arr = new ArrayList<Login>(); while (rs.next()) { l = new Login(); l.setId(rs.getInt(1)); l.setName(rs.getString(2)); l.setPass(rs.getString(3)); l.setFlag(rs.getString(4)); arr.add(l); } } catch (Exception e) { e.printStackTrace(); } finally { close(); } return arr; } public boolean check(String name, String pass) { boolean flag = false; try { open(); ps = con.prepareStatement("select id from login where name=? and pass=? and flag!=0"); ps.setString(1, name); ps.setString(2, pass); rs = ps.executeQuery(); if (rs.next()) { flag = true; } } catch (Exception e) { e.printStackTrace(); } finally { close(); } return flag; } private void close() { try { if (rs != null) { rs.close(); rs = null; } if (ps != null) { ps.close(); ps = null; } if (con != null) { con.close(); con = null; } } catch (Exception e) { e.printStackTrace(); } } }

Ⅱ java 怎麼驗證用戶名和密碼

1,建一個資料庫:是有用戶名與密碼的。
2,java中,通過建立一個類,比如說:DatabaseConnector,用於與資料庫進行連接。
3,類建好後,如果你用的是mysql資料庫的話,還需要再java中載入相應的jar包(mysql-connector-java-3.0.jar),其他資料庫也需要載入相應的包。
4.用戶名與密碼,放於資料庫中一個表中,當用戶登錄時,在資料庫該表中查找是否有用戶名與密碼與所給相同的欄位。如有,登錄成功,跳轉到相應頁面。如無,登錄失敗。

Ⅲ java 如何實現同一賬戶登錄驗證

今天繼續討論?-0-#這個只需要session和application就好了,用戶登錄時,這樣寫:User
user
=
.login(userName,
password);//
資料庫中判斷用戶名和密碼if
(null
!=
user)
{//
表示用戶存在
session.setAttribute("user",
user);//
把用戶放進session中
application.setAttribute(userName,
session.getId());/*
把用戶所在的sessionId放進application中,首先要明白一點,一個session對應一個瀏覽器,其次要注意一點,userName必須是唯一的*/}當用戶訪問到其他url的時候,可以在過濾器或你的攔截器中這樣寫:User
user
=
(User)
session.getAttribute("user");//
從session中取出用戶if
(null
==
user)
{//
未登錄或者登錄已經過期
response.sendRedirect(request.getContextPath());//
跳轉到首頁或登錄頁面}String
sessionId
=
(String)
application.getAttribute(user.getUserName());if
(null
==
sessionId
||
!sessionId.equals(session.getId()))
{/*這說明用戶已經在其他電腦或其它瀏覽器登錄了,那麼之前登錄的session就無效了,自動被後面的登錄給踢掉*/
response.sendRedirect(request.getContextPath());//
跳轉到首頁或登錄頁面}chain.doFilter(request,
response);//
通過驗證,放行用戶進入目標url這種方式是我的一個前輩想到的,我們公司的所有項目都採納了這種方式,確保一個賬號只能在一個瀏覽器中使用

Ⅳ Java (for循環)編程實現用戶登錄時的信息驗證

import java.util.*;
public class PswVerify { /**
* @param args
*/
public static void main(String[] args) {
// TODO 自動生成方法存根
Scanner input =new Scanner(System.in);
String username ="manage";
int password = 0000;

for(int i =3;i>=1;i--)
{

System.out.println("請輸入用戶名:");
String name =input.next();
System.out.println("請輸入密碼:");
int pw =input.nextInt();

if(name.equals(username)&&pw==password)
{
System.out.println("歡迎進入我行我素購物管理系統");
break;
}
else if(i!=1)
{
System.out.println("用戶名和密碼不匹配!");
System.out.println("你還有"+(i-1)+"次機會,請重新輸入:");
}
else
{
System.out.println("您沒有許可權進入系統!");
} }}
}

Ⅳ java web 驗證用戶是否已登錄有哪些方式。

你好!
保存登錄可以用session又可以用cookie
只要成功驗證密碼、用戶名、驗證碼後在跳轉之前用session、cookie來保存相關的信息,在下次登錄的時候(不要關閉瀏覽器),驗證session、cookie是否非空,是空,跳轉登錄頁面,非空,跳轉主頁
我的回答你還滿意嗎~~

Ⅵ java 登陸時的驗證碼怎麼做

後台寫一個生成圖片隨機的代碼,生成圖片給前台。切換圖片的時候,使用ajax獲取圖片數據就行。
附上生成圖片的代碼
public class ValidateCode {

private int width=180;
private int height=60;
private int codeCount = 4;
private int x = 0;
private int codeY;
private String Code;
private BufferedImage buffImg;
static char[] codeSequence = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
'X', 'Y', 'Z','a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
'x', 'y', 'z', 'o', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
private int fontHeight;

public ValidateCode() {
x = width / (codeCount + 2);
fontHeight = height - 2;
codeY = height - 4;
CreateCode();
}

public void CreateCode(){

// 定義圖像buffer
BufferedImage buffImg = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB);
Graphics2D g = buffImg.createGraphics();
// 創建一個隨機數生成器類
Random random = new Random();

// 將圖像填充為白色
g.setColor(Color.WHITE);
g.fillRect(0, 0, width, height);

// 創建字體,字體的大小應該根據圖片的高度來定。
Font font = new Font("Fixedsys", Font.PLAIN, fontHeight);
// 設置字體。
g.setFont(font);

// 畫邊框。
g.setColor(Color.BLACK);
g.drawRect(0, 0, width - 1, height - 1);

// randomCode用於保存隨機產生的驗證碼,以便用戶登錄後進行驗證。
StringBuffer randomCode = new StringBuffer();
int red = 0, green = 0, blue = 0;

// 隨機產生codeCount數字的驗證碼。
for (int i = 0; i < codeCount; i++) {
// 得到隨機產生的驗證碼數字。
String strRand = String.valueOf(codeSequence[random.nextInt(62)]);
// 產生隨機的顏色分量來構造顏色值,這樣輸出的每位數字的顏色值都將不同。
red = random.nextInt(255);
green = random.nextInt(255);
blue = random.nextInt(255);

// 用隨機產生的顏色將驗證碼繪制到圖像中。
g.setColor(new Color(red, green, blue));
g.drawString(strRand, (i ) * x+20, codeY);

// 將產生的四個隨機數組合在一起。
randomCode.append(strRand);
}
this.Code=randomCode.toString().toUpperCase();
this.buffImg=buffImg;

}

public String getCode() {
return Code;
}

public void setCode(String code) {
Code = code;
}

public BufferedImage getBuffImg() {
return buffImg;
}

public void setBuffImg(BufferedImage buffImg) {
this.buffImg = buffImg;
}
}

Ⅶ java登陸界面驗證

以下代碼就是了。

詳細參照附件

importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JPanel;
importjavax.swing.JPasswordField;
importjavax.swing.JTextField;
{
privateJTextFieldtext_username;
privateJPasswordFieldpassword_pwd;
privateJButtonbutton_lg,button_close;
privateJLabelmsgArea;
publicLoginJFrame(){
super("登錄");
this.setBounds(500,240,320,260);
setResizable(false);
setBackground(java.awt.Color.lightGray);
setDefaultCloseOperation(EXIT_ON_CLOSE);
getContentPane().setLayout(newGridLayout(4,1,20,10));
getContentPane().add(newJLabel("在線考試系統用戶登錄",JLabel.CENTER));
JPanelpanel_1=newJPanel(newGridLayout(2,2,0,5));
getContentPane().add(panel_1);
panel_1.add(newJLabel("用戶名:",JLabel.CENTER));
text_username=newJTextField(20);
panel_1.add(text_username);
panel_1.add(newJLabel("密碼:",JLabel.CENTER));
password_pwd=newJPasswordField(20);
panel_1.add(password_pwd);
JPanelpanel_2=newJPanel(newGridLayout(1,2,30,0));
getContentPane().add(panel_2);
button_lg=newJButton("登陸");
panel_2.add(button_lg);
button_lg.addActionListener(this);
button_close=newJButton("注冊");
panel_2.add(button_close);
setVisible(true);
//添加一個控制項用於顯示提示信息
JPanelpanel_3=newJPanel();
msgArea=newJLabel();
getContentPane().add(panel_3.add(msgArea));
setVisible(true);
}
publicstaticvoidmain(Stringarg[]){
newLoginJFrame();
}
publicvoidactionPerformed(ActionEvente){
//登錄按鈕
if(e.getSource()==button_lg){
if(text_username.getText().isEmpty()&&password_pwd.getText().isEmpty()){
msgArea.setText("請輸入用戶名和密碼!");
return;
}
if(text_username.getText().isEmpty()){
msgArea.setText("用戶名不能為空!");
return;
}
if(password_pwd.getText().isEmpty()){
msgArea.setText("密碼不能為空!");
return;
}
//TODO連接資料庫驗證用戶
}
}
}
閱讀全文

與java用戶登錄驗證相關的資料

熱點內容
anyview閱讀器java 瀏覽:357
怎麼降為安卓10 瀏覽:994
javaweb程序設計郭 瀏覽:247
gm聲望命令 瀏覽:484
pdf轉換器電腦版免費 瀏覽:41
解壓歌曲什麼歌最好 瀏覽:151
諾貝爾pdf 瀏覽:967
雲伺服器快速安裝系統原理 瀏覽:788
蘋果騰訊管家如何恢復加密相冊 瀏覽:115
手機軟體反編譯教程 瀏覽:858
sqlserver編程語言 瀏覽:650
gpa國際標准演算法 瀏覽:238
伺服器編程語言排行 瀏覽:947
怎麼下載快跑app 瀏覽:966
小紅書app如何保存視頻 瀏覽:172
如何解開系統加密文件 瀏覽:811
linux切換root命令 瀏覽:283
c編譯之後界面一閃而過怎麼辦 瀏覽:881
怎麼看ic卡是否加密 瀏覽:726
lgplc編程講座 瀏覽:811