Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何循环sql结果并在JLabel中显示结果_Java_Mysql_Swing - Fatal编程技术网

Java 如何循环sql结果并在JLabel中显示结果

Java 如何循环sql结果并在JLabel中显示结果,java,mysql,swing,Java,Mysql,Swing,我正在尝试将sql结果显示到JLabel中。数据库中有一个名为courses的表。在该表中有4列(id、name、img_path、description),我当前仅尝试显示课程名称。当我将结果打印到命令行时,它工作了。但是当我试图在JLabel中显示结果时。什么也没发生 下面是用于连接数据库的db.java文件 package my.welcomescreen; import java.sql.*; public class db { public static Connection db

我正在尝试将sql结果显示到JLabel中。数据库中有一个名为courses的表。在该表中有4列(id、name、img_path、description),我当前仅尝试显示课程名称。当我将结果打印到命令行时,它工作了。但是当我试图在JLabel中显示结果时。什么也没发生

下面是用于连接数据库的db.java文件

package my.welcomescreen;
import java.sql.*;

public class db {

public static Connection dbconnect(){
    Connection con=null;
    try {

    Class.forName("com.mysql.jdbc.Driver");
    con = DriverManager.getConnection("jdbc:mysql://localhost/st2", "root", "");


}
catch (ClassNotFoundException | SQLException e){
    System.out.println(e);
}
   return con; 
}

}
下面是Welcome_screen.java文件,其中包含main方法

package my.welcomescreen;
import java.sql.*;
import javax.swing.*;

public class Welcome_screen extends javax.swing.JFrame {


public Welcome_screen() {
    initComponents();
}

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

    jPanel1 = new javax.swing.JPanel();
    jLabel1 = new javax.swing.JLabel();
    signin_btn = new javax.swing.JButton();
    signup_btn = new javax.swing.JButton();
    jLabel2 = new javax.swing.JLabel();
    jLabel3 = new javax.swing.JLabel();
    jLabel4 = new javax.swing.JLabel();
    jLabel5 = new javax.swing.JLabel();
    jLabel6 = new javax.swing.JLabel();
    jLabel7 = new javax.swing.JLabel();
    cname = new javax.swing.JLabel();
    jLabel8 = new javax.swing.JLabel();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setBackground(new java.awt.Color(102, 255, 102));

    jPanel1.setBackground(new java.awt.Color(102, 255, 102));
    jPanel1.addInputMethodListener(new java.awt.event.InputMethodListener() {
        public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
        }
        public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
            jPanel1InputMethodTextChanged(evt);
        }
    });

    jLabel1.setFont(new java.awt.Font("SansSerif", 0, 58)); // NOI18N
    jLabel1.setForeground(new java.awt.Color(255, 255, 255));
    jLabel1.setText("WELCOME");

    signin_btn.setText("Sign in");
    signin_btn.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            signin_btnActionPerformed(evt);
        }
    });

    signup_btn.setText("Sign up");
    signup_btn.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            signup_btnActionPerformed(evt);
        }
    });

    jLabel2.setFont(new java.awt.Font("SansSerif", 1, 58)); // NOI18N
    jLabel2.setForeground(new java.awt.Color(255, 255, 255));
    jLabel2.setText("to");

    jLabel3.setFont(new java.awt.Font("SansSerif", 0, 58)); // NOI18N
    jLabel3.setForeground(new java.awt.Color(255, 255, 255));
    jLabel3.setText("E-Tutes !");

    jLabel4.setFont(new java.awt.Font("SansSerif", 0, 14)); // NOI18N
    jLabel4.setForeground(new java.awt.Color(255, 255, 255));
    jLabel4.setText("E-tutes is a great place for learn new programming languages.");

    jLabel5.setFont(new java.awt.Font("SansSerif", 0, 14)); // NOI18N
    jLabel5.setForeground(new java.awt.Color(255, 255, 255));
    jLabel5.setText(" You can find learn all the popular programming languges and frameworks in one place !");

    jLabel6.setFont(new java.awt.Font("SansSerif", 0, 14)); // NOI18N
    jLabel6.setForeground(new java.awt.Color(255, 255, 255));
    jLabel6.setText("It's totally free ! You can follow any of our courses for free with no hidden costs !");

    jLabel7.setFont(new java.awt.Font("SansSerif", 0, 14)); // NOI18N
    jLabel7.setForeground(new java.awt.Color(255, 255, 255));
    jLabel7.setText("Don't miss this opportunity ! ");

    jLabel8.setBackground(new java.awt.Color(153, 255, 255));

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(
        jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
            .addGap(0, 0, Short.MAX_VALUE)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                    .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 403, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(157, 157, 157))
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                    .addComponent(jLabel6)
                    .addGap(90, 90, 90))))
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 564, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
                    .addGap(54, 54, 54)
                    .addComponent(jLabel1)
                    .addGap(18, 18, 18)
                    .addComponent(jLabel2)
                    .addGap(10, 10, 10)
                    .addComponent(jLabel3))
                .addGroup(jPanel1Layout.createSequentialGroup()
                    .addComponent(jLabel7)
                    .addGap(197, 197, 197))
                .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
                    .addGap(184, 184, 184)
                    .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 122, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(cname)
                        .addGroup(jPanel1Layout.createSequentialGroup()
                            .addComponent(signin_btn, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(18, 18, 18)
                            .addComponent(signup_btn, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)))))
            .addContainerGap(69, Short.MAX_VALUE))
    );
    jPanel1Layout.setVerticalGroup(
        jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(jPanel1Layout.createSequentialGroup()
            .addGap(18, 18, 18)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel2)
                .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
            .addComponent(jLabel4)
            .addGap(1, 1, 1)
            .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addGap(1, 1, 1)
            .addComponent(jLabel6)
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addComponent(jLabel7)
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel1Layout.createSequentialGroup()
                    .addGap(49, 49, 49)
                    .addComponent(cname)
                    .addGap(170, 170, 170))
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(150, 150, 150)))
            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(signin_btn, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(signup_btn, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
    );

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
    );

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


private void signin_btnActionPerformed(java.awt.event.ActionEvent evt) {                                           
    new Sign_in().setVisible(true);
}                                          

private void signup_btnActionPerformed(java.awt.event.ActionEvent evt) {                                           
    new Sign_up().setVisible(true);
}                                          

private void jPanel1InputMethodTextChanged(java.awt.event.InputMethodEvent evt) {                                               

}                                              

public static void main(String args[]) {
    Welcome_screen courses = new Welcome_screen();
    courses.getCourses();


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

        }
    });
}

public void getCourses(){
    db obj = new db();
    obj.dbconnect();
    String Query = "select * from courses";
    try{
        Connection con = obj.dbconnect();
        Statement st = con.createStatement();
        ResultSet rs = st.executeQuery(Query);

        while(rs.next()){
            String value = rs.getString("name");
            jLabel8.setText(value); //this is the part that I set sql result to the JLabel       
}

    }catch(Exception e){
        System.out.println(e);
    }


}

// Variables declaration - do not modify                     
private javax.swing.JLabel cname;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JPanel jPanel1;
private javax.swing.JButton signin_btn;
private javax.swing.JButton signup_btn;
// End of variables declaration                   
}
package my.welcome屏幕;
导入java.sql.*;
导入javax.swing.*;
公共类欢迎屏幕扩展了javax.swing.JFrame{
公众欢迎屏幕(){
初始化组件();
}
@抑制警告(“未选中”)
//                           
私有组件(){
jPanel1=newjavax.swing.JPanel();
jLabel1=newjavax.swing.JLabel();
signin_btn=newjavax.swing.JButton();
signup_btn=newjavax.swing.JButton();
jLabel2=newjavax.swing.JLabel();
jLabel3=newjavax.swing.JLabel();
jLabel4=newjavax.swing.JLabel();
jLabel5=newjavax.swing.JLabel();
jLabel6=newjavax.swing.JLabel();
jLabel7=newjavax.swing.JLabel();
cname=newjavax.swing.JLabel();
jLabel8=newjavax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setBackground(新java.awt.Color(102255102));
setBackground(新java.awt.Color(102255102));
addInputMethodListener(新java.awt.event.InputMethodListener(){
公共无效caretPositionChanged(java.awt.event.InputMethodEvent evt){
}
public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt){
jPanel1InputMethodTextChanged(evt);
}
});
jLabel1.setFont(新的java.awt.Font(“SansSerif”,0,58));//NOI18N
setForeground(新java.awt.Color(255、255、255));
jLabel1.setText(“欢迎”);
登录设置文本(“登录”);
signin_btn.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
已执行的签名(evt);
}
});
注册设置文本(“注册”);
signup_btn.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
已执行注册(evt);
}
});
jLabel2.setFont(新的java.awt.Font(“SansSerif”,1,58));//NOI18N
setForeground(新java.awt.Color(255、255、255));
jLabel2.setText(“to”);
jLabel3.setFont(新的java.awt.Font(“SansSerif”,0,58));//NOI18N
setForeground(新java.awt.Color(255、255、255));
jLabel3.setText(“E-Tutes!”);
jLabel4.setFont(新的java.awt.Font(“SansSerif”,0,14));//NOI18N
setForeground(新java.awt.Color(255、255、255));
setText(“E-tutes是学习新编程语言的好地方。”);
jLabel5.setFont(新的java.awt.Font(“SansSerif”,0,14));//NOI18N
setForeground(新java.awt.Color(255、255、255));
setText(“您可以在一个地方找到并学习所有流行的编程语言和框架!”);
jLabel6.setFont(新的java.awt.Font(“SansSerif”,0,14));//NOI18N
jLabel6.set前台(新java.awt.Color(255、255、255));
jLabel6.setText(“这是完全免费的!您可以免费学习我们的任何课程,无需支付任何隐藏费用!”);
jLabel7.setFont(新的java.awt.Font(“SansSerif”,0,14));//NOI18N
jLabel7.set前台(新java.awt.Color(255、255、255));
jLabel7.setText(“不要错过这个机会!”);
jLabel8.setBackground(新java.awt.Color(153255));
javax.swing.GroupLayout jPanel1Layout=新的javax.swing.GroupLayout(jPanel1);
setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,jPanel1Layout.createSequentialGroup()
.addGap(0,0,短.MAX_值)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,jPanel1Layout.createSequentialGroup()
.addComponent(jLabel4,javax.swing.GroupLayout.PREFERRED\u SIZE,403,javax.swing.GroupLayout.PREFERRED\u SIZE)
.addGap(157、157、157))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,jPanel1Layout.createSequentialGroup()
.addComponent(jLabel6)
.addGap(90,90,90)))
.addGroup(jpanellayout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.Training)
.addComponent(jLabel5,javax.swing.GroupLayout.PREFERRED\u SIZE,564,javax.swing.GroupLayout.PREFERRED\u SIZE)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,jPanel1Layout.createSequentialGroup()
.addGap(54,54,54)
.addComponent(jLabel1)
.addGap(18,18,18)
.addComponent(jLabel2)
.addGap(10,10,10)
.addComponent(jLabel3))
.addGroup(jpanellayout.createSequentialGroup()
.addComponent(jLabel7)
.addGap(197197197))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,jPanel1Layout.createSequentialGroup()
.addGap(184184184184)
.addComponent(jLabel8,javax.swing.GroupLayout.PREFERRED\u SIZE,122,javax.swing.GroupLayout.PREFERRED\u SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(cnam