在Java中,使用JDBC連接MySQL時,我們可以通過編寫SQL語句,獲取數(shù)據(jù)庫中的時間值。而如果需要精確到秒級別,可以使用以下代碼:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.text.SimpleDateFormat; public class GetMySQLTime { public static void main(String[] args) { String driver = "com.mysql.jdbc.Driver"; //MySQL驅(qū)動程序 String url = "jdbc:mysql://localhost:3306/test"; //連接的數(shù)據(jù)庫 String user = "root"; //連接數(shù)據(jù)庫的用戶名 String password = "password"; //連接數(shù)據(jù)庫的密碼 Connection conn = null; Statement stmt = null; ResultSet rs = null; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { Class.forName(driver); //加載MySQL驅(qū)動程序 conn = DriverManager.getConnection(url, user, password); //連接MySQL數(shù)據(jù)庫 stmt = conn.createStatement(); rs = stmt.executeQuery("SELECT NOW()"); //獲取當前時間 while (rs.next()) { String nowTime = rs.getString(1); //讀取當前時間 System.out.println("當前時間:" + nowTime); System.out.println("當前時間(精確到秒):" + sdf.format(rs.getTimestamp(1))); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { //關(guān)閉連接 try { if (rs != null) rs.close(); if (stmt != null) stmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
上述代碼中,我們調(diào)用MySQL的NOW()函數(shù)獲取數(shù)據(jù)庫中的當前時間,并通過ResultSet對象讀取返回的數(shù)據(jù)。在輸出當前時間時,我們使用SimpleDateFormat格式化時間,將其精確到秒。因此,上述代碼可以獲得MySQL時間精確到秒的值。