JDBC:Java连接MySQL数据库(优化版)
本文的环境是Windows10 64位 ,MySQL的版本是MySQL 5.6
Java连接MySQL数据库(优化版)
目的:
当需要把应用程序从开发环境移植到生产环境时,不用修改源代码,只需要修改mysql.ini配置文件
方法:
不直接把数据库连接信息写在程序里,而是单独使用一个properties(也就是mysql.ini)文件,来保存数据库连接信息另外,连接数据库和向数据库添加数据操作可以进行方法封装。
在目录创建配置文件:
info.properties配置文件内容如下:
配置文件参数解释:
"com.mysql.jdbc.Driver":MySQL的驱动类名的字符串
"jdbc:mysql://127.0.0.1:3306/dome"
jdbc:mysql----表示用jdbc连接MySQL数据库
localhost------表示本机服务器默认地址(127.0.0.1也可以)
3306-----MySQL默认端口号,端口号可以修改
dome-----数据库名字
root root-----自己数据库的账号密码
对dome数据库下面的表 student2 进行数据的添加操作,结果如下所示:
在程序运行之前:
在程序运行之后:
完整代码如下:
package cn.csdn.dome;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.Properties;
/**
1. 向数据库插入两条条数据
2.
3. @author 长歌
4. @2020年4月12日下午10:35:03
*/
public class dome01 {
private String driver;
private String url;
private String user;
private String password;
/** 封装加载方法 **/
public void loadFile(String file) throws Exception{
//使用Properties类来加载属性文件
Properties prop = new Properties();
//通过FileInputStream,将file传入
prop.load(new FileInputStream(file));
driver = prop.getProperty("driver");
url = prop.getProperty("url");
user = prop.getProperty("user");
password = prop.getProperty("password");
//加载数据库驱动
Class.forName(driver);
}
/** 插入数据的方法 **/
public void insert(String s1,String s2 ,String s3) throws Exception{
//获得数据库的连接
Connection con = DriverManager.getConnection(url, user, password);
//得到prepareStatement对象(是Statement的子接口,推荐使用)
PreparedStatement pstmt = con.prepareStatement("insert into student2 value(null,?,?,?)");
//为PreparedStatement的参数设值
pstmt.setString(1, s1);//给第1个?赋值为 s1
pstmt.setString(2, s2);//给第2个?赋值为 s2
pstmt.setString(3, s3);//给第3个?赋值为 s3
//向数据库发送SQL语句
pstmt.executeUpdate();
}
public static void main(String[] args) throws Exception {
dome01 dm = new dome01();
//分别调用下面封装的 loadFile() 和 insert() 方法
dm.loadFile("./libs/info.properties");
dm.insert("周伯通","76","左右互搏");
dm.insert("扫地僧","98","易筋经");
}
}
注意事项:
1. 导入 jar包之后,记得 add to Build path ,否则:
解决:右键Build ,再右键 add Build path
2. 配置文件出错,系统找不到文件:
解决:路径应为 " ./libs/info.properties "
3. 连接数据库出错:
解决:去掉空格