1.新建项目 2.在src包下新建lib包,用来存放jar包(下载对应jar包复制到lib包里) 3.右键导入的jar包,找到并单击"添加到库"(add....)
4.在src包下新建bean包,新建class类 5.class类中写数据库表中对应的列名的set get方法、空参、有参(String方法) 注意:类名为私有类(private),新建类时数据类型要对应.
6.在src下新建数据库资源包jdbc,并写入数据库信息(用户数据库名,数据库密码,数据库地址,通过driver接口获取数据连接)
7.新建测试链接包(Connection),在包下新建class类(prepareStatementUpdate)包名意思为使用prepareStatement方法获取sql语句 8.新建@Test注释,"alt+enter"引入maven文件(引入后还报错是因为未写测试内容,正常现象)
9.新建类testInsert(以插入为例) 10.文章内容大概分为7部分,见图;
11.前1-3部分为连接数据库,其中会有报错见如图;
12.出现如图;表示连接数据库成功
src/Connection/prepareStatementUpdate.java:
package Connection;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Properties;
public class prepareStatementUpdate {
@Test
public void testInsert() throws IOException, ClassNotFoundException, SQLException, ParseException {//此处4个报错为针对性报错,可直接改为Exception(代表大范围内的报错都包括在内)
// public void testInsert() throws Exception{ }
//1.读取数据库资源内的4个基本配置文件(链接数据库)
//定义is 来获得jdbc.properties内(数据库资源包内)的数据
InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("jdbc.properties");
//new一个Properties 简写pros 用来调用is里的数据
Properties pros = new Properties();
pros.load(is);
//通过pros.getProperty来获取数据库的属性,完成链接
String user = pros.getProperty("user");
String password = pros.getProperty("password");
String url = pros.getProperty("url");
String driverclass = pros.getProperty("driverclass");
//2.加载驱动
Class.forName(driverclass);
//3.获取链接
//通过DriverManager获取数据库属性,付给定义变量conn
Connection conn = DriverManager.getConnection(url, user, password);
//输出conn得到数据库地址表示链接成功
System.out.println(conn);
//4.输入sql增删改查,返回实例
String sql = "insert into Customers(name,email,brith) values(?,?,?)";
//此处写"value 或values"都可以,区别为value执行时间久,values执行时间很短; values内的?为占位符,用来被sql数据填充,对应前边Customers内的列名
PreparedStatement ps = conn.prepareStatement(sql);
//用conn.出来sql赋给ps
//5.填充占用符,执行sql语句
//利用ps.set方法传入插入数据库的内容
//括号内1,2,3代表第几个问号
ps.setString(1, "邓紫棋");
ps.setString(2, "[email protected]");
//此处应写入日期,但数据库内日期和java里的date写法不同,所以要特殊定义date类型
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//此处括号内date写法应对应正则表达式形式
java.util.Date date = sdf.parse("1991-08-16"); //此处Date必须使用java.sql类型
ps.setDate(3, new java.sql.Date(date.getTime()));
//6.连接到数据库(写入java中添加的数据信息)
ps.execute();
//7.关闭数据流
ps.close();
conn.close();
}
}
jdbc.properties:
user = root
password = 123456
url = jdbc:mysql://localhost:3306/test
driverclass = com.mysql.cj.jdbc.Driver
#键值对不能加""和;
src/bean/Customers.java
package bean;
import java.sql.Date;
public class Customers {
//定义私有类
private int id;
private String name;
private String email;
private Date brith ;
//set get方法
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Date getBrith() {
return brith;
}
public void setBrith(Date brith) {
this.brith = brith;
}
//空参
public void Customers(){
}
//有参
public Customers(int id, String name, String email, Date brith) {
this.id = id;
this.name = name;
this.email = email;
this.brith = brith;
}
//toString方法
/*
@Override
public String toString() {
return "Customers{" +
"id=" + id +
", name='" + name + '\'' +
", email='" + email + '\'' +
", brith=" + brith +
'}';
}
*/
}
本文转载自: https://blog.csdn.net/m0_74135466/article/details/127706792
版权归原作者 蜡笔小鑫@ 所有, 如有侵权,请联系我们删除。
版权归原作者 蜡笔小鑫@ 所有, 如有侵权,请联系我们删除。