java_crud 环境配置教程
本文会从安装开始,到最后写出一个带命令行交互窗口的 CRUD 的小项目.
安装
安装 JDK
建议下载 java17 以防止有依赖问题
点击这个下载 .msi
安装包来安装
这里建议不要更改默认位置
安装完成🥳
设置环境变量
在 Windows开始菜单
搜索 环境变量
在系统环境变量下面点击新建
变量名设置为 JAVA_HOME
变量值设置为 C:\Program Files\Java\jdk-17.0.4.1
如果你有安装到其他目录请填其他目录
新建环境变量 CLASS_PATH
变量值为 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
如下图所示
注意 变量值比较奇怪 可能理解不能 但是要照上填写
在系统变量里找到 path
双击
点击新建 值填写
%JAVA_HOME%\bin
点击确定
接下来按 Windows 键加 R 键 输入 cmd 点确定
在命令行里输入 java --version
如有正常不报错则配置成功🥳
安装 MySQL
MySQL :: Download MySQL Installer (Archived Versions)
双击打开
选 default
直接 next
yes
Execute
一路 next
设一个密码
然后一路 next
点 check
点 next
最后会跳出这么一个奇奇怪怪的 MySQL JS 的命令行 (说实话我没懂为什么有这玩意
(不过你可以在上面玩玩 JS 的特性 :)
和命令行同时弹出来的是 workbench
MySQL 已安装完成🥳
安装 JetBrain IntelliJ IDEA
直接下载咯 0 配置的
创建项目
新建项目
创建配置如图所示
点进 src/main/java/org/example/main
运行一下试试
配置 Maven
点击编辑配置
新建一个 Maven 配置
配置如图 保存应用
点击运行
build 成功后会生成一个 snapshot 的 jar
接下来是安装 maven 依赖项
打开 pom.xml 右键点生成
搜索 mysql-connector 添加这个 8 版本的依赖
生成了如图的代码则成功
在与 dependencies 同级的标签下面 添加如下代码 配置 maven 依赖自动安装
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>org.example.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
点击右上角 重新加载 maven 变更
加载数据库 && 创建数据表
在右边的侧边栏中找到数据库 添加一个 MySQL
输入你刚设置的账号密码连接
弹出一个 console
在里面输入
CREATE DATABASE `java_crud_demo` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
绿色框内是 idea 识别出来的 sql 语句 点击左上绿色箭头执行
右侧数据库栏里会出现你刚创建的数据库 但是里面没有表
在 console 里输入
create table if not exists `java_crud_demo`.`article_table`
(
id int unsigned auto_increment
primary key,
title varchar(100) not null,
author varchar(40) not null,
time datetime null
);
2
3
4
5
6
7
8
ctrl + a 全选中 然后点执行
生成了表 article_table 里面没有数据
简单的填充数据 可以 console 输入
INSERT INTO `java_crud_demo`.`article_table` (`title`, `author`, `time`)
VALUES ('标题', '作者', NOW());
2
插入完了记得点这个刷新
也可以直接在 table 预览界面
添加行 输入完毕后 点提交
数据库 crud 模板
新建一个 crud.java
package org.example;
import java.sql.*;
public class Crud {
// MySQL 8.0 以下版本 - JDBC 驱动名及数据库 URL
//static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
//static final String DB_URL = "jdbc:mysql://localhost:3306/java_crud_demo";
// MySQL 8.0 以上版本 - JDBC 驱动名及数据库 URL
static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/java_crud_demo?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC";
// 数据库的用户名与密码,需要根据自己的设置
static final String USER = "root";
static final String PASS = "123456";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 打开链接
System.out.println("连接数据库...");
conn = DriverManager.getConnection(DB_URL,USER,PASS);
// 执行查询
System.out.println(" 实例化Statement对象...");
stmt = conn.createStatement();
String sql;
sql = "SELECT id, title, author, time FROM java_crud_demo";
ResultSet rs = stmt.executeQuery(sql);
// 展开结果集数据库
while(rs.next()){
// 通过字段检索
int id = rs.getInt("id");
String title = rs.getString("title");
String author = rs.getString("author");
String time = rs.getString("time");
// 输出数据
System.out.println("ID: " + id);
System.out.println("标题:" + title);
System.out.println("作者:" + author);
System.out.println("时间:" + time);
}
// 完成后关闭
rs.close();
stmt.close();
conn.close();
}catch(SQLException se){
// 处理 JDBC 错误
se.printStackTrace();
}catch(Exception e){
// 处理 Class.forName 错误
e.printStackTrace();
}finally{
// 关闭资源
try{
if(stmt!=null) stmt.close();
}catch(SQLException se2){
}// 什么都不做
try{
if(conn!=null) conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}
System.out.println("Goodbye!");
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
接下来愉快写你的代码主逻辑咯🥳
双击打开 jar
package org.example;
import java.io.File;
public class Main {
public static void main(String[] args) {
if (args.length == 0) {
try {
String path = System.getProperty("java.class.path");
int lastIndex = path.lastIndexOf(File.separator) + 1;
String file_name = path.substring(lastIndex);
ProcessBuilder pb = new ProcessBuilder();
pb.directory(new File("."));
System.out.printf("%s %s %s %s %s %s %s", "cmd", "/c", "start", "java", "-jar", file_name, "eject");
pb.command("cmd", "/c", "start", "java", "-jar", file_name, "eject");
pb.start();
} catch (Exception e) {
e.printStackTrace();
} finally {
System.exit(0);
}
}
else {
//主函数
System.out.println("Hello World!");
}
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
在 main 开头加上这样一段 他会帮你输入命令来打开一个弹出的新窗口啦🥳
结束
Maven 构建之后就得到了需要的 jar 包了🥳