2015-03-08 1 views
-1

У меня есть два кадра. Один - для login_page (где пользователь вводит электронную почту и пароль). Здесь аутентификация выполняется с использованием API Google. В другом кадре (который имеет несколько списков со списком и переключателей, которые будут выбраны), но для одной радиокнопки я хочу, чтобы JOptionPane всплывал с паролем и помнил меня как опцию, только если пароль правильный, я могу разрешить ему подать.Как реализовать помнить меня, функция пароля в java swing с помощью флажка

Как сохранить пароль, используя как меня помнить?

+1

вопрос очень широк, какой аспект вы возникли проблемы с ... – MadProgrammer

+0

я просто хочу JOptionPane с паролем и флажком (Запомнить меня), когда пароль введен и установлен флажок, мне нужно сохранить пароль ... – avaj

+0

для этой простой ситуации вы можете просто сохранить ваш пароль в файле и получить его снова со сканером. – crAlexander

ответ

0
  • Глава 1:

Что такое база данных: A large collection of associated data

Для больших приложений этого путь просто не существует там, вам нужно использовать базы данных, такие как sql, оракул ..etc некоторые с открытым исходным кодом, как MySQL, miniBase ..etc

  • Глава 2:

Я написал простое приложение для needs.It делает думает вы описали и сохранили имя и пароль в файле [на рабочем столе пользователя].

enter image description here

Класс:

import java.awt.FlowLayout; 
import java.awt.event.MouseAdapter; 
import java.awt.event.MouseEvent; 
import java.io.BufferedWriter; 
import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileWriter; 
import java.io.IOException; 
import java.util.Scanner; 

import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JPasswordField; 
import javax.swing.JRadioButton; 
import javax.swing.JTextField; 

public class Applic { 

//This will be the file where the username and password will be saved 
File file = new File(System.getProperty("user.home")+"/Desktop/save.txt"); 


//Window,buttons etc... 
JFrame frame= new JFrame(); 
JTextField name = new JTextField(20); 
JPasswordField password = new JPasswordField(20); 
JRadioButton remember = new JRadioButton("Remember me"); 
JButton Enter = new JButton("Enter"); 

    public Applic(){ 


    //Create the Window 
     frame.setSize(250,200); 
     frame.setLocationRelativeTo(null); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.setResizable(false); 
     frame.setLayout(new FlowLayout()); 

     //Add The items to window 
     frame.add(name); 
     frame.add(password); 
     frame.add(remember); 
     frame.add(Enter); 


     UPDATE(); //Check if password and this User is Saved (very simple for one user) 
     frame.setVisible(true); 


     //Add A mouseAdapter(or whatever you want 
     Enter.addMouseListener(new MouseAdapter(){ 
      public void mouseReleased(MouseEvent m){ 

       if(remember.isSelected()){ 
        SAVE(); //Save This UserName and his PassWord  
       } 

      }//end of mouseReleased 
     }); 
    } 


public static void main(String[] args){ 
    new Applic(); 
} 


    public void SAVE(){  //Save the UserName and Password (for one user) 



     try { 
      if(!file.exists()) file.createNewFile(); //if the file !exist create a new one 

      BufferedWriter bw = new BufferedWriter(new FileWriter(file.getAbsolutePath())); 
      bw.write(name.getText()); //write the name 
      bw.newLine(); //leave a new Line 
      bw.write(password.getPassword()); //write the password 
      bw.close(); //close the BufferdWriter 

     } catch (IOException e) { e.printStackTrace(); }   

}//End Of Save 




    public void UPDATE(){ //UPDATE ON OPENING THE APPLICATION 

     try { 
      if(file.exists()){ //if this file exists 

      Scanner scan = new Scanner(file); //Use Scanner to read the File 

      name.setText(scan.nextLine()); //append the text to name field 
      password.setText(scan.nextLine()); //append the text to password field 
      scan.close(); 
      } 

     } catch (FileNotFoundException e) {   
      e.printStackTrace(); 
     }     

    }//End OF UPDATE 



}//End Of Class [Applic] 
0

Если вы используете базу данных, а не установите флажок в базе данных. Otherweise, Если установлен флажок, чем хранить ваш пароль в каком-то скрытом файле по пути пользователя. В следующий раз перед тем, как войти в систему, просмотрите этот пароль.

Edit: Пример кода для файла на основе RememberMe пароля или имени пользователя

String path=System.getProperty("user.home")+"/.myapp"; 
    FileWriter file=new FileWriter(path); 
    file.write("user_password"); 
    file.close(); 
+0

Я не использую базу данных ... Я просто хочу простой код, когда вводится пароль и установлен флажок, что passowrd должен быть сохранен – avaj

+0

Вы можете использовать класс 'PrintWriter' или' FileWriter'. – Masudul

Смежные вопросы