如何在MacOS下使用JDBC连接Java文件与MySQL(无IDE环境)
嘿,我刚好在Mac上用过纯文本编辑器搞Java连MySQL,给你捋一遍清晰的步骤,比IDE里操作其实更直观:
第一步:准备MySQL JDBC驱动
首先得把MySQL的JDBC驱动包搞到手——去MySQL官网下载Connector/J(就是Java连接MySQL的驱动),选对应你MySQL版本的包(比如MySQL 8.0就下8.x的驱动)。解压后你会得到一个类似mysql-connector-java-8.0.36.jar的文件,建议把它放到一个固定的文件夹里,比如~/java/libs/,方便后续一直用。
第二步:编写Java连接代码
用Sublime Text新建一个.java文件(比如叫MySQLConnector.java),然后把下面的示例代码粘进去,记得替换里面的数据库名、用户名和密码:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class MySQLConnector { public static void main(String[] args) { // MySQL 8.0+ 驱动类名 String driver = "com.mysql.cj.jdbc.Driver"; // 数据库连接URL,替换成你的数据库名 String url = "jdbc:mysql://localhost:3306/your_database_name?useSSL=false&serverTimezone=UTC"; // 你的MySQL用户名和密码 String user = "your_username"; String password = "your_password"; try { // 加载驱动 Class.forName(driver); // 建立连接 Connection conn = DriverManager.getConnection(url, user, password); System.out.println("数据库连接成功!"); // 简单测试:执行查询 Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM your_table_name"); while (rs.next()) { // 替换成你的表字段,比如rs.getString("id") System.out.println(rs.getString("column_name")); } // 关闭资源 rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } } }
第三步:编译Java文件(带驱动路径)
打开终端,切换到你保存.java文件的目录,然后执行编译命令——这里必须指定驱动的路径,不然编译器找不到JDBC的类:
javac -cp ~/java/libs/mysql-connector-java-8.0.36.jar MySQLConnector.java
解释下:-cp是classpath的缩写,告诉编译器去哪里找依赖的类文件,后面跟着你刚才放驱动jar的路径。
第四步:运行编译后的程序
编译成功后,终端里会生成一个MySQLConnector.class文件,接下来用这个命令运行:
java -cp .:~/java/libs/mysql-connector-java-8.0.36.jar MySQLConnector
这里的.表示当前目录(让JVM找到你编译的class文件),冒号:是Mac上classpath的分隔符,后面跟着驱动jar的路径。
几个实用小提示
- 确保MySQL服务已经启动:如果是用Homebrew装的MySQL,终端里敲
brew services start mysql就能启动;也可以去系统偏好设置里找MySQL图标启动。 - MySQL 8.0+的注意点:驱动类必须用
com.mysql.cj.jdbc.Driver(旧的com.mysql.jdbc.Driver已经废弃),而且URL里必须加serverTimezone参数,不然会报时区错误。 - 偷懒小技巧:如果不想每次编译运行都写长长的驱动路径,可以把驱动路径加到环境变量里。打开
~/.zshrc(如果用的是bash就改~/.bash_profile),加一行:
然后终端里敲export CLASSPATH=$CLASSPATH:~/java/libs/mysql-connector-java-8.0.36.jarsource ~/.zshrc生效,之后编译运行就可以直接用javac MySQLConnector.java和java MySQLConnector了。
内容的提问来源于stack exchange,提问作者Jesús Enrique Arriaga Gómez




