数据库连接被用于向数据库服务器发送命令和 SQL 语句,并接受数据库服务器返回的结果。其实一个数据库连
接就是一个Socket连接
一、增加操作
//向数据库中添加一条信息
@Test
public void test1() {
Connection conn=null;
PreparedStatement ps=null;
try {
//1.读取配置文件
InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("jdbc.properties");
Properties pros = new Properties();
pros.load(is);
String user = pros.getProperty("user");
String password = pros.getProperty("password");
String url = pros.getProperty("url");
String driverClass = pros.getProperty("driverClass");
//2.加载驱动
Class.forName(driverClass);
//3.获取连接
conn = DriverManager.getConnection(url, user, password);
//4.预编译sql语句,返回PreparedStatement的实例
String sql = "insert into student(sno,sname,ssex,sage,sdept)value(?,?,?,?,?)";//?为占位符
ps = conn.prepareStatement(sql);
//5.填充占位符
ps.setString(1, "1466223131");
ps.setString(2, "李二");
ps.setString(3, "男");
ps.setString(4, "23");
ps.setString(5, "商学院");
//6.执行sql操作
ps.execute();
System.out.println("修改成功!");
} catch (Exception e) {
e.getStackTrace();
}finally {
//7.资源关闭
try {
if (ps!=null)
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (conn!=null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
结果如下:
此处代码虽然完成了预期的功能,但是并不是一段好的代码,代码冗余量,硬编码太多,下面我们将对它进行修改,以减小冗余和耦合。
二、修改操作
/**
*
*@Description 获取数据库连接
*@author