Java 使用jFrame1中输入的文本作为参考,以显示JFrame2中的信息

Java 使用jFrame1中输入的文本作为参考,以显示JFrame2中的信息,java,swing,netbeans,login,jframe,Java,Swing,Netbeans,Login,Jframe,**你好。我的登录系统有这个问题。下面是一个场景:我有两个JFrames。JFrame1用于登录,JFrame2用于提供信息。用户名、密码和个人信息包含在数据库中。如果Employee1已登录,则第二个JFrame应显示有关Employee1的信息。我试图创建一个sql语句,但我不知道如何使用jFrame1中输入的文本作为引用,以便在JFrame2中显示信息。 以下是我在登录(JFrame1)中的代码: import java.sql.*; 导入javax.swing.*; 公共类LoginFo

**你好。我的登录系统有这个问题。下面是一个场景:我有两个JFrames。JFrame1用于登录,JFrame2用于提供信息。用户名、密码和个人信息包含在数据库中。如果Employee1已登录,则第二个JFrame应显示有关Employee1的信息。我试图创建一个sql语句,但我不知道如何使用jFrame1中输入的文本作为引用,以便在JFrame2中显示信息。 以下是我在登录(JFrame1)中的代码:

import java.sql.*;
导入javax.swing.*;
公共类LoginForm扩展了javax.swing.JFrame{
连接conn=null;
PreparedStatement pst=null;
结果集rs=null;
/**
*创建新表单EmployeeHome1
*/
公共登录表单(){
初始化组件();
conn=dbconnect.ConnectDB();
}
/**
*从构造函数中调用此方法来初始化表单。
*警告:不要修改此代码。此方法的内容始终为
*由表单编辑器重新生成。
*/
@抑制警告(“未选中”)
//                           
私有组件(){
jLabel1=newjavax.swing.JLabel();
jLabel2=newjavax.swing.JLabel();
jLabel3=newjavax.swing.JLabel();
username=newjavax.swing.JTextField();
password=newjavax.swing.JPasswordField();
b_login=newjavax.swing.JButton();
jLabel4=newjavax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle(“员工工资系统-登录”);
setMinimumSize(新java.awt.Dimension(400310));
可设置大小(假);
getContentPane().setLayout(null);
jLabel1.setFont(新的java.awt.Font(“永远在我心中”,0,48));//NOI18N
setForeground(新java.awt.Color(255、255、255));
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel1.setText(“员工工资系统”);
getContentPane().add(jLabel1);
jLabel1.立根(-10,20,400,61);
jLabel2.setFont(新的java.awt.Font(“Arial窄带”,0,18));//NOI18N
setForeground(新java.awt.Color(255、255、255));
jLabel2.setText(“用户名:”);
getContentPane().add(jLabel2);
jLabel2.挫折(59,122,73,21);
jLabel3.setFont(新的java.awt.Font(“Arial窄带”,0,18));//NOI18N
setForeground(新java.awt.Color(255、255、255));
jLabel3.setText(“密码:”);
getContentPane().add(jLabel3);
jLabel3.立根(59,167,70,21);
username.setFont(新的java.awt.Font(“Arial狭窄”,0,18));//NOI18N
username.setHorizontalAlignment(javax.swing.JTextField.CENTER);
getContentPane().add(用户名);
用户名.setBounds(171、119、170、27);
setFont(新的java.awt.Font(“Arial窄带”,0,18));//NOI18N
setHorizontalAlignment(javax.swing.JTextField.CENTER);
getContentPane().add(密码);
密码.setBounds(171、164、170、27);
b_login.setFont(新的java.awt.Font(“Arial狭窄”,0,18));//NOI18N
b_login.setText(“登录”);
b_login.addMouseListener(新的java.awt.event.MouseAdapter(){
public void mouseClicked(java.awt.event.MouseEvent evt){
b_登录用户(evt);
}
});
getContentPane().add(b_登录);
b_login.setBounds(15922971 29);
jLabel4.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel4.setIcon(新的javax.swing.ImageIcon(getClass().getResource(“/Blue_Background.jpg”);//NOI18N
getContentPane().add(jLabel4);
jLabel4.立根(0,0,400,310);
getAccessibleContext().setAccessibleName(“”);
包装();
}//                         
私有void b_loginMouseClicked(java.awt.event.MouseEvent evt){
//TODO在此处添加您的处理代码:
String sql=“select*from tbl_login,其中username='”+username.getText()+”,password='“+password.getText()+”;
试一试{
pst=conn.prepareStatement(sql);
rs=pst.executeQuery();
如果(rs.next()){
newform();
username.getText
用户名
}
否则{
showMessageDialog(null,“不正确的用户名或密码”);
}
}
捕获(例外e){
showMessageDialog(null,e);
}
}                                    
public void newform(){
String sql1=“从tbl_登录中选择类型,其中username='”+username.getText()+“'和password='”+password.getText()+“”;
试一试{
pst=连接准备状态(sql1);
rs=pst.executeQuery();
rs.next();
字符串名称=rs.getString(“类型”);
if(name.equals(“admin”)){
AdminHome ah=新AdminHome();
啊,可见(真),;
}
否则{
EmployeeHome eh=新员工之家();
呃,setVisible(true),;
}
}
捕获(例外e){
showMessageDialog(null,e);
}
}
/**
*@param指定命令行参数
*/
公共静态void main(字符串参数[]){
/*设置Nimbus的外观和感觉*/
//
/*如果Nimbus(在JavaSE6中引入)不可用,请使用默认的外观。
*详情请参阅http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
*/
试一试{
for(javax.swing.UIManager.LookAndFeelInfo:javax.swing.UIManager.getInstalledLookAndFeels()){
if(“Nimbus”.equals(info.getName())){
setLookAndFeel(info.getClassName());
打破
}
}
}捕获(ClassNotFoundException ex){
getLogger(LoginForm.class.getName()).log(java.util.logging.Level.SEVERE,nul
import java.sql.*;
import javax.swing.*;

public class LoginForm extends javax.swing.JFrame {

Connection conn = null;
PreparedStatement pst = null;
ResultSet rs = null;
/**
 * Creates new form EmployeeHome1
 */
public LoginForm() {
    initComponents();
    conn = dbconnect.ConnectDB();
}

/**
 * This method is called from within the constructor to initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is always
 * regenerated by the Form Editor.
 */


@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jLabel1 = new javax.swing.JLabel();
    jLabel2 = new javax.swing.JLabel();
    jLabel3 = new javax.swing.JLabel();
    username = new javax.swing.JTextField();
    password = new javax.swing.JPasswordField();
    b_login = new javax.swing.JButton();
    jLabel4 = new javax.swing.JLabel();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("Employee Payroll System - Log In");
    setMinimumSize(new java.awt.Dimension(400, 310));
    setResizable(false);
    getContentPane().setLayout(null);

    jLabel1.setFont(new java.awt.Font("Always In My Heart", 0, 48)); // NOI18N
    jLabel1.setForeground(new java.awt.Color(255, 255, 255));
    jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel1.setText("Employee Payroll System");
    getContentPane().add(jLabel1);
    jLabel1.setBounds(-10, 20, 400, 61);

    jLabel2.setFont(new java.awt.Font("Arial Narrow", 0, 18)); // NOI18N
    jLabel2.setForeground(new java.awt.Color(255, 255, 255));
    jLabel2.setText("username :");
    getContentPane().add(jLabel2);
    jLabel2.setBounds(59, 122, 73, 21);

    jLabel3.setFont(new java.awt.Font("Arial Narrow", 0, 18)); // NOI18N
    jLabel3.setForeground(new java.awt.Color(255, 255, 255));
    jLabel3.setText("password :");
    getContentPane().add(jLabel3);
    jLabel3.setBounds(59, 167, 70, 21);

    username.setFont(new java.awt.Font("Arial Narrow", 0, 18)); // NOI18N
    username.setHorizontalAlignment(javax.swing.JTextField.CENTER);
    getContentPane().add(username);
    username.setBounds(171, 119, 170, 27);

    password.setFont(new java.awt.Font("Arial Narrow", 0, 18)); // NOI18N
    password.setHorizontalAlignment(javax.swing.JTextField.CENTER);
    getContentPane().add(password);
    password.setBounds(171, 164, 170, 27);

    b_login.setFont(new java.awt.Font("Arial Narrow", 0, 18)); // NOI18N
    b_login.setText("Log In");
    b_login.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            b_loginMouseClicked(evt);
        }
    });
    getContentPane().add(b_login);
    b_login.setBounds(159, 229, 71, 29);

    jLabel4.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Blue_Background.jpg"))); // NOI18N
    getContentPane().add(jLabel4);
    jLabel4.setBounds(0, 0, 400, 310);

    getAccessibleContext().setAccessibleName("");

    pack();
}// </editor-fold>                        

private void b_loginMouseClicked(java.awt.event.MouseEvent evt) {                                     
    // TODO add your handling code here:
    String sql = "select * from tbl_login where username = '"+username.getText()+"' and password = '"+password.getText()+"'";
        try {
            pst = conn.prepareStatement(sql);
            rs = pst.executeQuery();
                if (rs.next()){
                    newform();
                    username.getText
                            username
                }
                else {
                    JOptionPane.showMessageDialog(null, "Incorrect username or password.");
                }
        }
        catch (Exception e){
            JOptionPane.showMessageDialog(null, e);
        }
}                                    

public void newform(){
    String sql1 = "select type from tbl_login where username='"+username.getText()+"' and password='"+password.getText()+"'";
        try {
            pst = conn.prepareStatement(sql1);
            rs = pst.executeQuery();
            rs.next();
            String name = rs.getString("type");
                if (name.equals("admin")) {
                    AdminHome ah = new AdminHome();
                    ah.setVisible(true);
                }
                else {
                    EmployeeHome eh = new EmployeeHome();
                    eh.setVisible(true);
                }
        }
        catch (Exception e){
            JOptionPane.showMessageDialog(null, e);
        }
}
/**
 * @param args the command line arguments
 */
public static void main(String args[]) {
    /* Set the Nimbus look and feel */
    //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
    /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
     * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
     */
    try {
        for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
            if ("Nimbus".equals(info.getName())) {
                javax.swing.UIManager.setLookAndFeel(info.getClassName());
                break;
            }
        }
    } catch (ClassNotFoundException ex) {
        java.util.logging.Logger.getLogger(LoginForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (InstantiationException ex) {
        java.util.logging.Logger.getLogger(LoginForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (IllegalAccessException ex) {
        java.util.logging.Logger.getLogger(LoginForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (javax.swing.UnsupportedLookAndFeelException ex) {
        java.util.logging.Logger.getLogger(LoginForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    }
    //</editor-fold>

    /* Create and display the form */
    java.awt.EventQueue.invokeLater(new Runnable() {
        @Override
        public void run() {
            new LoginForm().setVisible(true);
        }
    });
}

// Variables declaration - do not modify                     
private javax.swing.JButton b_login;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JPasswordField password;
private javax.swing.JTextField username;
// End of variables declaration         
}
if (rs.next) {

    // Create a new user from the result set....
    User user = createUser(rs);

    if ("admin".equals(user.getType()) {
        AdminHome ah = new AdminHome(user);
        ah.setVisible(true);
    } else {
        EmployeeHome eh = new EmployeeHome(user);
        eh.setVisible(true);
    }

}