转载自:https://blog.csdn.net/mrw456/article/details/49718235
1、导入数据库驱动jar包,与及编写数据库配置文件(mysql.properties),mysql.properties放在项目的src目录下[本例使用的数据库为Mysql5.5,数据库驱动jar包为mysql-connector-java-5.0.8-bin.jar]
mysql.properties:
name=com.mysql.jdbc.Driver //数据库驱动名称
url=jdbc:mysql://127.0.0.1:3306/dormitory //数据库连接url
user=root //数据库连接用户名
password=123456 //数据库连接密码
2、编写mysql.properties读取属性类Mysqlread.java,负责读取mysql.properties中的属性名称
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.Iterator;
import java.util.Properties;
public class Mysqlread {
public static final String [] message=readurl();
private static String[] readurl() {
Properties prop=new Properties();
String [] message=new String[4];
int i=0;
try {
InputStream in=new BufferedInputStream(new FileInputStream("src/mysql.properties"));
prop.load(in);
message[0]=prop.getProperty("name");
message[1]=prop.getProperty("url");
message[2]=prop.getProperty("user");
message[3]=prop.getProperty("password");
in.close();
} catch (Exception e) {
e.printStackTrace();
return null;
}
return message;
}
}
3、编写数据库连接类MysqlOperation.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class MysqlOperation {
private static final String[] mysqlmessage=Mysqlread.message;
public static Connection getConnection()
{
Connection conn=null;
try {
Class.forName(mysqlmessage[0]);
conn=DriverManager.getConnection(mysqlmessage[1],mysqlmessage[2],mysqlmessage[3]);
} catch (ClassNotFoundException e) {
System.out.println("驱动类库不能发现");
} catch (SQLException e) {
System.out.println("SQL异常");
}
return conn;
}
public static void close(Connection conn){
if(conn!=null)
{
try {
conn.close();
} catch (SQLException e) {
System.out.println("SQL异常");
}
}
}
public static void close(Statement statement){
if(statement!=null){
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
statement=null;
}
}
public static void close(ResultSet rs)
{
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
rs=null;
}
}
}
4、编写一个测试类测试上述代码是否成功
import static org.junit.Assert.*;
import java.sql.Connection;
import org.junit.Test;
import com.mrw.util.MysqlOperation;
public class TestPropertisread {
@Test
public void test() {
Connection conn=MysqlOperation.getConnection();
System.out.println(conn);
MysqlOperation.close(conn);
}
}
运行结果为: