Java开发基础-JDBC-基本使用步骤—03

代码改进背景介绍:V1版本

使用JDBC操作数据库,我们会发现有些固有不变的代码,我们不需要每次都实现一遍,

为了提高代码的复用性与避免编写重复的代码,我们可以将JDBC固有操作封装成一个工具类,

在使用到时调用其中静态方法即可。

/**
 * 该类用来管理数据库连接
 * @author Cher_du
 *
 */
public class DBUtil {
	
	private static String driverClass ="oracle.jdbc.driver.OracleDriver";
	private static String url = "jdbc:oracle:thin:@localhost:1521:orcl";
	private static String user ="learn";
	private static String password = "learn";
	
	//1.加载驱动
	static{
		try {
			Class.forName(driverClass);
			
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
			throw new RuntimeException("加载驱动错误!",e);
		}
	}

	//2.创建连接
	/*
	 * 如何定义一个创建连接的方法
	 * 
	 * 返回值类型:
	 * 		是否有运算结果,如果有,
	 * 		结果的类型即为返回值类型。
	 * 参数列表:
	 * 		功能中,是否有不确定的数据参与运算
	 *      如果有,即为参数列表
	 */
	
	public static Connection getConnection() throws SQLException{
		Connection conn  = DriverManager.getConnection(url,user,password);
		return conn;	
	}
	
	//3.关闭连接
	public static void close(Connection conn){
		if(conn !=null){
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
				throw new RuntimeException("关闭连接错误!",e);
			}
		}
	}
	
	//测试
	public static void main(String[] args) throws SQLException {
		System.out.println(getConnection());
	}
	
}

我们编写任何一个工具类都要有对应测试用例,以便别人方便快捷的知道如何正确使用。

案例中只是为了方便理解JDBC知识简单的使用了main方法做测试,正规的测试应当使用单元测试框架。(Juint等)


下面我们使用DBUtil工具类演示一下数据库操作:

/**
 * 演示:使用DBUtil类删除员工信息
 * delete from emp
 * where empno = 1000;
 * @author Cher_du
 *
 */
public class JdbcDemo03 {
	
	public static void main(String[] args) {
		Connection conn = null;
		
		try {
			conn = DBUtil.getConnection();
		    Statement stmt	= conn.createStatement();
		    String sql  = "delete from emp "+
		                 "where empno = 1000 ";
		    int count=  stmt.executeUpdate(sql);
		    
		    if(count >0){
		    	System.out.println("删除成功!");
		    }
			
		} catch (SQLException e) {
			e.printStackTrace();
		}finally{
			DBUtil.close(conn);
		}
		
	}

}

执行程序后数据库表中数据变化-[鲁迅 数据已经被删除了]


猜你喜欢

转载自blog.csdn.net/coder_boy_/article/details/80574800