Java Web 使用IDEA对mysql数据库进行简单增删改查操作(附源码下载)
一、加载数据库驱动
1.下载jdbc(如已下载可略过此步骤)
(1)点击下载网址,选择Connector/J
(2)选择Platform Independent版本
(3)下载下图所示的压缩包
2.将下载的jar包复制到WEB-INF下新建的lib中。
3.导入jar包
(1)选择File下的Project Structure
(2)然后按如下图所示步骤添加jar包
二、创建Mysql数据库
1.创建数据库
打开cmd命令行,输入命令:
create database XXX;//建立数据库
use XXX;//进入数据库
create table XX(testinfor varchar(30));//创建表
Insert into XX value(’’);//插入数据
2.使用可视化工具(例如Navicat)
(1)点击文件,新建连接选择MySQL
(2)设置连接名称和密码即可
(3)创建数据库,右键点击一个自动创建的数据库,选择新建数据库,设置数据库名、字符集、排序规则
(4)新建表,设置字段名和表名
三、连接数据库与数据库可视化
1.连接数据库
(1)写下如下代码:
package sql;
import java.sql.*;
public class HandleSql { //创建 HandleSql 类
static Connection con; //声明 Connection 对象
static PreparedStatement pStmt; //声明预处理 PreparedStatement 对象
static ResultSet res; //声明结果 ResultSet 对象
static String url = "jdbc:mysql://localhost:3307/student?serverTimezone=UTC";
static String user = "root";
static String password = "123456";
public Connection getConnection() { //建立返回值为 Connection 的方法
//加载数据库驱动类
try {
Class.forName( "com.mysql.cj.jdbc.Driver");
System. out.println( "数据库驱动加载成功");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
//通过访问数据库的URL获取数据库连接对象
try {
con = DriverManager.getConnection(url,user,password);
System. out.println( "数据库连接成功");
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
public static void main(String[] args) { //主方法
HandleSql h = new HandleSql(); //创建本类对象
con = h.getConnection(); //与数据库建立连接
}
(2)运行代码,结果如下图显示
2.使用IDEA完成数据库可视化
(1)点击View在Tool Windows中选择Database打开数据库工具窗口
(2)在右侧的窗口中点击按钮“+”,选择数据库类型(以MySQL为例)
(3)填写数据库连接的主机名、数据库名、用户名和密码
(4)可点击Test Connection按钮进行测试数据库连接是否正常,如下图所示即为连接正常
四、使用IDEA完成对数据库的增删改查
1.增加(在主方法调用函数)
public static void addData() {
try {
pStmt = con.prepareStatement( "insert into student (name,bianhao) values(?,?)");
pStmt.setString( 1, "张九");
pStmt.setString( 2, "0000009");
pStmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}
}
增加前
增加后
2.删除(在主方法调用函数)
public static void deleteData() {
try {
Statement stmt = con.createStatement(); //创建Statement对象
stmt.executeUpdate( "delete from student where id=4");
stmt.executeUpdate( "delete from student where id=5");
} catch (Exception e) {
e.printStackTrace();
}
}
删除前
删除后
3.更新数据(在主方法调用函数)
public static void updateData() {
try {
pStmt = con.prepareStatement( "update student set name = ? where id = 1");
pStmt.setString( 1, "帅哥");
pStmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}
}
更新前
更新后
4.查询数据(在主方法调用函数)
public static void queryData() {
try {
pStmt=con.prepareStatement( "select * from student");
res = pStmt.executeQuery();
while (res.next()) { //如果当前语句不是最后一条,则进入循环
int id = res.getInt( "id");
String name = res.getString( "name");
String phone = res.getString( "bianhao");
System. out.println( "id:" + id + " " + "姓名:" + name + " " + "电话:" + phone);
}
} catch (Exception e) {
e.printStackTrace();
}
}
结果如下图所示