JDBC:四步完成MySQL数据库的连接

时间:2023-03-09 18:00:33
JDBC:四步完成MySQL数据库的连接

->首先,将MySQL的jar包引入

JDBC:四步完成MySQL数据库的连接

->然后创建一个.properties的文件(例:connection.properties),在该文件中写入如下代码:

jdbc.driver.class = com.mysql.jdbc.Driver
jdbc.connection.url = jdbc:mysql://服务器地址:端口号/数据库名?useUnicode=true&characterEncoding=UTF-8
jdbc.connection.username = MySQL数据库名称
jdbc.connection.password = MySQL数据库密码

注: ?useUnicode=true&characterEncoding=UTF-8 这段代码的作用是防止出现中文乱码

->然后创建一个解析connection.properties的类(ConfigManager.class),这里涉及到一个单例模式:

省略相关包的导入...

public class ConfigManager {
private Properties properties = null;
private static ConfigManager configManager = null; //构造方法
private ConfigManager() {
InputStream inputstream = null;
try {
inputstream = ConfigManager.class.getClassLoader().getResourceAsStream("connection.properties");
properties = new Properties();
properties.load(inputstream);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
inputstream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
} //获得实例(单例)
public static ConfigManager getInstance() {
if (configManager == null) {
configManager = new ConfigManager();
}
return configManager;
} //获得配置的值
public String getPropertyValue(String key) {
return properties.getProperty(key);
}
}

->最后完成数据库连接,代码如下:

省略相关包的导入...

public class Base {

    public Connection connection = null;

    //jdbc数据库连接
public Connection jdbcGetConnection() {
String driver = ConfigManager.getInstance().getPropertyValue("jdbc.driver.class");
String url = ConfigManager.getInstance().getPropertyValue("jdbc.connection.url");
String username = ConfigManager.getInstance().getPropertyValue("jdbc.connection.username");
String password = ConfigManager.getInstance().getPropertyValue("jdbc.connection.password");
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, username, password);
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
}