簡體   English   中英

有人可以告訴我為什么out.println不起作用嗎?

[英]Can someone please tell me why the out.println isn't working?

下面的JDBC代碼將數據插入MySQL數據庫的表中。 除out.println響應和requestdispatcher之外,它工作正常。 更新成功后,應打印“創建成功的員工帳戶”。 同樣,如果更新不成功。 但是,它不打印輸出。

        try{ 

             Class.forName("com.mysql.jdbc.Driver").newInstance(); 
             Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/payroll_system", "root", ""); 
             PreparedStatement ps = con.prepareStatement("INSERT INTO payroll_system.employee_info(employeeID, FirstName, LastName, Admin,DOB,Address,Email,HourlyRate,Gender,ALeaveBalance,SLeaveBalance,ActiveStatus,Role,BSB,BankName,AccNumber,SuperNumber,SuperCompany) values(?,?,?,?,?,?,?,?,?,?,?,1,?,?,?,?,?,?)"); 
             ps.setString(1, employee_id);
             ps.setString(2, firstName);
             ps.setString(3, lastName);
             ps.setString(4, admin);
             ps.setString(5, DOB);
             ps.setString(6, address);
             ps.setString(7, email);
             ps.setString(8, HPR);
             ps.setString(9, gender);
             ps.setString(10, ALB);
             ps.setString(11, SLB);
             ps.setString(12, Role);
             ps.setString(13, BSB);
             ps.setString(14, BankName);
             ps.setString(15, BAN);
             ps.setString(16, SAC);
             ps.setString(17, SAN);

             int count = ps.executeUpdate(); 

             if(count>0) { 
                 out.println("Employee Account Successfully Created");
             }
             else { 
                 out.println("Failed to create account");
             }

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

您兩次調用executeUpdate ,第二次調用將不返回任何內容,您應該刪除一個調用。

因此,只需替換:

ps.executeUpdate(); 

int count = ps.executeUpdate(); 

與:

int count = ps.executeUpdate(); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM