首先在src目录下创建一个文件夹
命名为jdbc.propertis
在里面 添加如下信息
再在JDBCUtil.java里面创建一个静态代码块,里面用来读取properties配置文件
JDBCUtil.java代码
package com.cxp.jdbc.util;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
import com.sun.xml.internal.fastinfoset.sax.Properties;
/**
* JDBC工具类
*
* @date 2019/07/
* @author 陈喜平
* @email [email protected]
* @TODU
*
*/
public class JDBCUtil {
static String driverClass = null;
static String url = null;
static String name = null;
static String password = null;
/**
* 静态代码块
*/
static {
// 创建属性配置对象
try {
java.util.Properties properties = new java.util.Properties();
InputStream inStream = JDBCUtil.class.getClassLoader().getResourceAsStream("jdbc.properties");
// 导入输入流
properties.load(inStream);
// 读取属性
driverClass = properties.getProperty("driverClass");
url = properties.getProperty("url");
name = properties.getProperty("name");
password = properties.getProperty("password");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 获取连接对象
* @return
*/
// 连接对象
public static Connection getConn() {
Connection cn = null;
try {
Class.forName(driverClass);
// 创建连接
cn = (Connection) DriverManager.getConnection(url, name , password);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return cn;
}
/**
* 释放资源
* @param cn
* @param st
* @param rs
*/
// 释放资源方法
public static void release(Connection cn,Statement st,ResultSet rs) {
closeRs(rs);
closeSt(st);
closeCn(cn);
}
private static void closeRs(ResultSet rs) {
try {
if (rs != null) {
rs.close();
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
rs = null;
}
}
private static void closeSt(Statement st) {
try {
if (st != null) {
st.close();
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
st = null;
}
}
private static void closeCn(Connection cn) {
try {
if (cn != null) {
cn.close();
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
cn = null;
}
}
}
jdbc.properties内容
driverClass=com.mysql.jdbc.Driver
url = jdbc:mysql://localhost/jdbcdemo
name = 你的数据库用户名
password = 你的密码
MainTest.java文件
package com.cxp.jdbc.test;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.cxp.jdbc.util.JDBCUtil;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Driver;
import com.mysql.jdbc.Statement;
public class MainTest {
public static void main(String[] args) {
Connection cn = null;
Statement st = null;
ResultSet rs = null;
try {
// 注册驱动
// DriverManager.registerDriver(new Driver());
// Class.forName("com.mysql.jdbc.Driver");
创建连接
// cn = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/jdbcdemo", "root", "771003");
cn = JDBCUtil.getConn();//注册驱动工具包调用方法
// 创建statement
st = (Statement) cn.createStatement();
// 结果集
String sql = "select * from user_table";
rs = st.executeQuery(sql);
while(rs.next()) {
int id = rs.getInt("userid");
String name = rs.getString("username");
String sex = rs.getString("sex");
int age = rs.getInt("age");
System.out.println("id="+id+",name="+name+",sex="+sex+",age="+age);
}
} catch (Exception e) {
e.printStackTrace();
}finally {
JDBCUtil.release(cn, st, rs);
}
}
}