请注意,本文编写于 968 天前,最后修改于 949 天前,其中某些信息可能已经过时。
JDBC全称是Java数据库连接(Java DataBase Connectivity),它是一套用于执行SQL语句的JavaAPI。应用程序可以通过这套API连接到关系型数据库,并使用SQL语句来完成对数据库中数据的查询、更新、新增和删除的操作。
1.导入jar包
2.创建数据库配置文件
在项目src目录下创建db.properties文件
#db.properties
# MySQL8.0+请使用com.mysql.cj.jdbc.Driver
Driver=com.mysql.jdbc.Driver
# 127.0.0.1可以省略
url=jdbc:mysql://127.0.0.1/database
username=root
password=root
3.编写JDBCUtil.java文件
- 配置静态字段
//配置静态字段
private static String driver;
private static String url;
private static String username;
private static String password;
//连接池对象
private static Connection con; //数据库连接对象
private static PreparedStatement pst; //数据库执行对象
private static ResultSet rst; //返回结果集
- 加载数据库驱动
static { //创建静态代码块
//创建配置文件数据流
InputStream is = JDBCUtil.class.getClassLoader().getResourceAsStream("db.properties");
//创建配置文件对象
Properties ps = new Properties();
try { //加载配置文件数据流
ps.load(is);
driver = ps.getProperty("Driver");
url = ps.getProperty("url");
username = ps.getProperty("username");
password = ps.getProperty("password");
} catch (IOException e) {
e.printStackTrace();
}
try { //加载驱动
Class.forName(driver);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
- 创建获取连接的方法
//获取数据库连接
private static Connection getConnection(String driver,String username,String password) throws SQLException {
return DriverManager.getConnection(driver,username,password);
}
- 创建增删改的方法
//执行增删改操作
public static boolean executeUpdate(String sql,Object...obj) throws SQLException {
// String sql = "select * from stu where name=? and age=?"; sql语句示例,‘?’为参数
boolean flag;
con=getConnection(driver,username,password); //获取数据库连接
pst = con.prepareStatement(sql); //SQL执行对象
if(obj.length>0){ //设置sql执行语句中参数
for (int i = 0; i < obj.length; i++) {
pst.setObject(i+1,obj[i]);
}
}
flag=pst.executeUpdate()>0;
con.close(); //关闭数据库连接
pst.close(); //关闭SQL执行对象
return flag;
}
- 创建查询的方法
//执行查询操作
public static ResultSet executeQuery(String sql,Object...obj) throws SQLException {
// String sql = "insert stu(name,age) values(?,?)"; sql语句示例,‘?’为参数
con=getConnection(driver,username,password); //获取数据库连接
pst = con.prepareStatement(sql); //SQL执行对象
if(obj.length>0){ //设置sql执行语句中参数
for (int i = 0; i < obj.length; i++) {
pst.setObject(i+1,obj[i]);
}
}
rst = pst.executeQuery();
return rst;
}
- 创建释放的方法
//释放连接资源
private static void close(Connection con,PreparedStatement pst){
if(con!=null) {
try {
con.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if(pst!=null) {
try {
pst.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
关于JDBC的进阶使用方法:Druid 数据库连接池 简化JDBC
版权属于:筱晨’s Blog
本博客所有文章除特别声明外,均采用 知识共享署名 4.0 国际许可协议 许可协议。转载请注明来自 筱晨's Blog!
2 条评论
当时学JAVA就是学到这里之后就没学了
以后还会出更多java的教程的,本人也是主学java的,另外你也可以加下群,有什么技术难题都可以在群里交流。