美文网首页
1、JDBCTools

1、JDBCTools

作者: 在努力中 | 来源:发表于2018-06-25 16:38 被阅读0次
package com.lsy.jdbc;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

public class JDBCTools {
    /**
     * 1、获取数据库连接
     */
    public static  Connection getConnection() throws IOException, ClassNotFoundException, SQLException {
        //0、读取配置文件
        /*
         * 1、属性文件对应Java 中的 Properties类
         *      文件放在src下,实际上是在bin(类所在目录)中
         * 2、可以使用 类加载器 加载 bin 目录 (路径下的文件)
         */
        Properties properties = new Properties();
        InputStream inStream  = 
                JDBCTools.class.getClassLoader().getResourceAsStream("jdbc.properties");
        properties.load(inStream);
        
        //1、准备连接数据库的四个字符串:user password,jdbcUrl,driverClass
        // 从配置文件中得到
        String user = properties.getProperty("user");
        String password = properties.getProperty("password");
        String url = properties.getProperty("jdbcUrl");
        String driverClass = properties.getProperty("driver");
        
        
        //2、加载驱动:Class.forName(driverClass)
        Class.forName(driverClass);
        
        //3、调用:DriverManager.getConnection(jdbcUrl,user,password)
        //3.1、获取数据库的连接
        Connection connection =
                DriverManager.getConnection(url,user,password);
        return connection;
    }
    /**
     * 2、释放数据库资源
     */
    public static void releaseDB(ResultSet resultSet,Statement statement,Connection connection){
        
        if(resultSet != null){
            try {
                resultSet.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        if(statement != null){
            try {
                statement.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        if(connection != null){
            try {
                connection.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
    /**
     * 3、更新方法(update add delete)没有 select
     * 执行 SQL 的方法
     */
    public static void update(String sql){
        System.out.println("update");
        //1.获取数据连接
        Connection connection = null;
        Statement statement = null;
        
        try {
            //2.调用Connection 对象的 【createStatement()】 方获取 Statement 对象
            connection = getConnection();
            statement = connection.createStatement();
                
            //3.准备 SQL 语句
//          sql = "update customer set name = 'cadddda' where id = 3";
            
            //4.发送 SQL 语句:调用 Statement 对象的 【executeUpdate(sql)】 方法
            statement.executeUpdate(sql);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //5.关闭数据库资源:由里向外关闭
            releaseDB(null, statement, connection);
        }
        System.out.println("update");
    }
}

相关文章

  • 1、JDBCTools

  • JDBCTools

    package com..utils; import org.apache.commons.lang.ArrayU...

  • 1▪1▪1▪1▪1

    今天是国际劳动节,出门看人头,上路遇堵车,处处挤破头,急哭也停不下车。 不如歇了吧 ...

  • 1+1+1…+1=1

    对“一”的理解: 赠人玫瑰,不仅仅是手留余香。 利益他人,实际上也疗愈了自己。 利他、利己,如此往复循环, 最终利...

  • (-1)×(-1)= 1

    数学家经过很长一段时间才认识到(-1)×(-1)= 1是不能被证明的(即使大数学家欧拉曾给出不能令人信服的...

  • 1-2-1-1-1

    【下马请罪】 子龙下马,向张飞跪地请罪道:“张将军,一时失手……”话未停,便被张飞一矛刺了个透心凉。子龙堵着胸口汩...

  • 1 1:1 1(原创小说)

    闪回:那天她…… 当时,我确实听到了那个声音,可如今却怎么也记不清了。 掉下来了。 我觉得,那一刻...

  • 《1+1=1-1》

    十一月十一日晚,致X小姐。 十月初九, 一个人购物的孤独, 你谈起, 月光下轧过的马路, 金钱带不来满足, 忙忙碌...

  • 1+1=-1

    结婚育子这几年,在磕磕碰碰中一路走来,才恍然大悟,自己真正的成长,始于育儿。 婚前是父母的公主,虽说家境贫困,却得...

  • 1+1<1

    也许有人看到我的标题就会来质疑我,说我怎么连最简单的数学都不会。1+1=2>1啊,这么简单的算数题,我怎会不知?但...

网友评论

      本文标题:1、JDBCTools

      本文链接:https://www.haomeiwen.com/subject/obbyyftx.html