本文着重于搭建三者的联动环境,而非其中某个具体的环境搭建。请读者自行准备好相关的单个环境。
请善用导航栏。
一、下载JDK、MySQL、VS Code
JDK下载地址:JDK 官网
VS Code下载地址:VS Code 官网
MySQL Windows版本下载:MySQL 官网
怕麻烦?那就一切都使用默认方式安装。需要手动配置的部分本文不做赘述,请参考其它文章。
二、安装VS Code插件
安装如下的插件:
[1] SQLTools
[2] SQLTools MySQL/MariaDB
[3] Extension Pack for Java
其中第三个插件是一个插件集合,上述三个安装完以后就配置好了VS Code和Java联动、VS Code和MySQL联动的环境。安装完以后能看见如下的已安装插件:
三、VS Code连接MySQL
安装完SQL插件之后需要添加MySQL连接。但在这之前你需要先修改MySQL对于管理员密码的加密方式(因为VS Code的插件目前还没适配新的默认加密方式)。先打开PowerShell,输入:
> mysql -u root -p
登陆为 root
账户后,在MySQL Shell中执行下面的命令:
mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY 你的密码;
上述代码会修改 root
账户的密码并修改其加密方式。修改其它账户的密码也相似,此处不做赘述。
使用VS Code连接MySQL的操作按下图顺序进行即可:
安装完插件以后右侧会出现这个图标。没有就右键此处调出 “SQLTools”:
然后选择 Add New Connection
,点击之后会出现如下选项:
选择 MySQL
,然后弹出如下配置选项。
有CET4基础的应该能看懂每个选项的意义。看不懂?去考CET4啊CET4!单词都给我背!其中,已经给定默认值的选项可以不动,带 *
的选项不允许为空,不带的则可以不填。填完信息后就可以进行连接了。
四、VS Code中的Java连接MySQL
在安装MySQL时,如果选择默认安装将会安装JDBC,即适用于Java的SQL接口。它的默认路径如下:
C:\Program Files (x86)\MySQL\Connector J 8.0\
跳转到该目录,会看到有一个名为 mysql-connector-java-8.0.28.jar
的文件(可能你的版本号不一样,不过没关系,只要是 mysql-connector-java-XXXXX.jar
就行)。这个就是已经封装好的JDBC接口。将这个文件复制到你觉得适合的位置(不复制也行)。然后打开VS Code。
选择Java Project面板,展开你要配置环境的文件夹,会看到有一个名为 Referenced Libraries
的选项,点击它旁边的 +
,选择刚刚的JDBC接口文件,引用完成。
五、通过Java访问MySQL
在访问MySQL之前应先引用 java.sql.*
库。
// 初始化并挂载 com.mysql.cj.jdbc.Driver 类,使其能通过 DriverManager 类访问。
Class.forName("com.mysql.cj.jdbc.Driver");
// 连接到 MySQL ,"root"代表用户名,"1145141919810"则是该用户名的密码
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306", "root", "1145141919810");
// 获得一个类似于套接字的对象,实现与 MySQL 服务器之间互相收发信息
Statement Controller = connection.createStatement();
// 执行插入语句
Controller.execute("INSERT ctos.hie (name,type) VALUES ('Diva','None')");
// 执行查询语句,返回值是一个 ResultSet 对象,它是一个迭代器
ResultSet ReturnedValues = Controller.executeQuery("SELECT * FROM ctos.hie");
// 打印查找结果
while (ReturnedValues.next()) {
int Age = ReturnedValues.getInt("age");
String Name = ReturnedValues.getString("name");
String Type = ReturnedValues.getString("type");
System.out.print("名称: " + Name);
System.out.print(", 年龄: " + Age);
System.out.print(", 型号: " + Type);
System.out.print("\n");
}
// 记得关闭连接,这是个好习惯
Controller.close();
connection.close();
输出结果为:
名称: Kouka, 年龄: 20, 型号: Type-001
名称: Lacia, 年龄: 17, 型号: Type-005
名称: Lacia-01, 年龄: 14, 型号: Type-005
名称: Method, 年龄: 18, 型号: Type-004
名称: Diva, 年龄: 0, 型号: None
请注意,通过上述方式加载外部库后,不能使用 Code Runner
插件运行,必须使用Java插件提供的 Run
按钮。