原谅我是初学者,这个方法写的很烂,以后不会改进,谢谢
/** * 通过JDBC向数据库中插入一条数据 1.Statement 用于执行SQL语句的对象 1.1 通过Connection 的 * createStatement() 方法来获取 1.2 通过executeUpdate(sql) 的方法来执行SQL 1.3 * 传入的SQL可以是INSERT/UPDATE/DELETE,但不能是SELECT * * 2.Connection和Statement使用后一定要记得关闭 需要在finally里关闭其对象 * 2.1 关闭的顺序:先关闭后获取的 */ @Test public void testStatement() { // 1.获取数据库连接 Connection connection = null; // 4.执行插入 // 4.1 获取操作SQL语句的Statement对象: // 调用Connection的createStatement()方法来创建Statement的对象 Statement statement = null; try { connection = getConnection(); // 3.准备插入的SQL语句 String sql = "INSERT INTO customers (NAME,EMAIL,BIRTH) " +"VALUES ('李小龙','long@live.com','1940-11-27')"; statement = connection.createStatement(); // 4.2 调用Statement对象的executeUpdate(sql) 执行SQL 语句的插入 statement.executeUpdate(sql); } catch (SQLException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { // 5.关闭Statement对象 if (statement != null) { try { statement.close(); } catch (SQLException e) { e.printStackTrace(); } } if (connection != null) { // 2.关闭连接 try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } } public Connection getConnection() throws Exception { // 准备连接数据库的四个字符串 // 驱动的全类名 String driverClass = null; String jdbcUrl = null; String user = null; String password = null; String jdbcName = null; // 读取jdbcName.properties文件 InputStream inStream = getClass().getClassLoader().getResourceAsStream("properties/jdbcName.properties"); Properties propertiesOfName = new Properties(); propertiesOfName.load(inStream); jdbcName = propertiesOfName.getProperty("jdbcName"); // 读取需要的properties 文件 InputStream in = getClass().getClassLoader().getResourceAsStream("properties/" + jdbcName + ".properties"); Properties properties = new Properties(); properties.load(in); driverClass = properties.getProperty("driver"); jdbcUrl = properties.getProperty("jdbcUrl"); user = properties.getProperty("user"); password = properties.getProperty("password"); // 加载数据库驱动程序(注册驱动) Class.forName(driverClass); Connection connection = DriverManager.getConnection(jdbcUrl, user, password); return connection; }
数据库配置如下