一:数据库驱动
二:数据库连接实例
1.使用Java JDBC操作数据库一般需要6步:
(1)建立JDBC桥接器,加载数据库驱动;
(2)连接数据库,获得Connection对象(使用数据库连接地址,用户名,密码);
(3)获得数据库Statement对象;
(4)执行数据库操作;
(5)读取结果;
(6)关闭数据库连接;
2.使用Java JDBC操作数据库(mysql)代码:
import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.Statement;
import
java.sql.ResultSet;
public
class
MyTest {
public
static
void
main(String args[]) {
Connection con =
null
;
Statement st =
null
;
ResultSet rs =
null
;
try
{
// 获得MySQL驱动的实例
Class.forName(
"com.mysql.jdbc.Driver"
).newInstance();
// 获得连接对象(提供:地址,用户名,密码)
if
(!con.isClosed())
System.out.println(
"Successfully connected "
);
else
System.out.println(
"failed connected"
);
//建立一个Statement,数据库对象
st = con.createStatement();
// 运行SQL查询语句
rs = st.executeQuery(
"select * from Weather.question_type_1;"
);
// 读取结果集
while
(rs.next()) {
System.out.println(
"column1:"
+rs.getInt(
1
));
System.out.println(
"column2:"
+rs.getString(
2
));
System.out.println(
"column3:"
+rs.getString(
3
));
System.out.println(
"column4:"
+rs.getString(
4
));
}
// 关闭链接
con.close();
}
catch
(Exception e) {
System.err.println(
"Exception: "
+ e.getMessage());
}
}
}
3.通过配置文件建立数据库连接:
//配置文件db.properties的内容:
//driver=com.MySQL.jdbc.Driver
//url=jdbc:mysql://127.0.0.1:3306/database?useUnicode=true&characterEncoding=utf8
//username=root
//password=123456
//initalSize=10
//maxActive=50
//maxIdle=50
//maxWait=60000
//注意:配置文件存放在src文件夹下
数据库连接工具类DBUtil.Java内容为:
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
public class DBUtil {
private static Properties props;
private static Connection conn;
// 数据库连接
public static Connection getConnection() {
props = new Properties();
try {
InputStream in = DBUtil.class.getClassLoader().getResourceAsStream(
"db.properties");
props.load(in);
} catch (IOException e) {
e.printStackTrace();
}
String driver = props.getProperty("driver");
String url = props.getProperty("url");
String username = props.getProperty("username");
String password = props.getProperty("password");
try {
Class.forName(driver);
conn = DriverManager.getConnection(url, username, password);
} catch (SQLException e) {
System.out.println("数据库无法连接!");
e.printStackTrace();
} catch (ClassNotFoundException e) {
System.out.println("数据库驱动找不到!");
e.printStackTrace();
}
return conn;
}
// 关闭数据库连接
public static void close(Connection conn) {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
System.out.println("数据库关闭异常!");
e.printStackTrace();
}
}
}
}