jdbc从基础到优化

package com.xk.demotest.tools;

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

public class DaoDBConectTools {
    /*
    // 传统jdbc连接
    private static final String driverName = "com.mysql.jdbc.Driver";
    private static final String url = "jdbc:mysql://localhost:3306/20170626javaweb01";
    private static final String user = "root";
    private static final String password = "root";

    public DaoDBConectTools() {
        Connection connect = null;
        Statement state = null;
        try {
            Class.forName(driverName);
            connect = DriverManager.getConnection(url, user, password);
            state = connect.createStatement();
            String sql = "";
            state.executeQuery(sql);
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                state.close();
                connect.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
*/

    private static final Properties pro = new Properties(); // ①创建properties对象
    //加载配置文件和驱动
    static {
        InputStream iStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("config.properties"); // ②引入配置文件
        try {
            pro.load(iStream); // ②引入配置文件
            String driverName = pro.getProperty("driverName"); // ③加载驱动
            Class.forName(driverName);
        } catch (IOException | ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    //获取连接对像并创建连接
    public static Connection connection() {
        String url = pro.getProperty("url");
        String user = pro.getProperty("userName");
        String password = pro.getProperty("password");
        Connection connect = null;
        try {
            connect = DriverManager.getConnection(url, user, password);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return connect;
    }

    //关闭数据库连接
    public static void close(Connection connect, Statement state) {
        if (state != null) {
            try {
                state.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (connect != null) {
            try {
                connect.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

}

package com.xk.demotest.tools;

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

public class DaoDBConectTools {
    /*
    // 传统jdbc连接
    private static final String driverName = "com.mysql.jdbc.Driver";
    private static final String url = "jdbc:mysql://localhost:3306/20170626javaweb01";
    private static final String user = "root";
    private static final String password = "root";

    public DaoDBConectTools() {
        Connection connect = null;
        Statement state = null;
        try {
            Class.forName(driverName);
            connect = DriverManager.getConnection(url, user, password);
            state = connect.createStatement();
            String sql = "";
            state.executeQuery(sql);
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                state.close();
                connect.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
*/

    private static final Properties pro = new Properties(); // ①创建properties对象
    //加载配置文件和驱动
    static {
        InputStream iStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("config.properties"); // ②引入配置文件
        try {
            pro.load(iStream); // ②引入配置文件
            String driverName = pro.getProperty("driverName"); // ③加载驱动
            Class.forName(driverName);
        } catch (IOException | ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    //获取连接对像并创建连接
    public static Connection connection() {
        String url = pro.getProperty("url");
        String user = pro.getProperty("userName");
        String password = pro.getProperty("password");
        Connection connect = null;
        try {
            connect = DriverManager.getConnection(url, user, password);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return connect;
    }

    //关闭数据库连接
    public static void close(Connection connect, Statement state) {
        if (state != null) {
            try {
                state.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (connect != null) {
            try {
                connect.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

}
时间: 2024-12-21 02:20:48

jdbc从基础到优化的相关文章

移动前端开发基础与优化

移动前端开发基础与优化 http://qywx.gitcafe.io/2014/11/22/%E7%A7%BB%E5%8A%A8%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91%E5%9F%BA%E7%A1%80%E4%B8%8E%E4%BC%98%E5%8C%96/ 优雅且高效的使用Chrome Developer Tools(上) http://lin-chao.github.io/2014/10/10/%E4%BC%98%E9%9B%85%E4%B8%94%E9%A

jdbc 链接池的优化

package cn.itcast.jdbc.datasourse; import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.LinkedList; public class MyDataSourse {    private static String url = "jdbc:mysql://localhost:3306/test"; 

采用DTO和DAO对JDBC程序进行进一步优化

采用DTO和DAO对JDBC程序进行进一步优化 DTO:数据传输对象,主要用于远程调用等需要远程调用对象的地方DAO:数据访问对象,主要实现封装数据库的访问,通过它可以把数据库中的表转换成DTO类 引入DTO其实就是新建实体类. 那么DAO呢,就是封装访问数据的方法,比如对某一个表插入,更新,删除等方法可以放进对应的dao中 代码如下: 这是访问User表所使用方法的接口,里面放的是访问过程中会使用到时方法 public interface UserDao { public void save(

JDBC一般流程及优化过程

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class Base {   /**  * @param args  * @throws Exception  */ public static void main(String[] args) th

Java JDBC的基础知识(四)

之前学习了如何创建一个数据库工具类,如下: import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class DBUtil { // 私有化构造方法 private DBUtil() { } private static String url = "&q

JDBC技术基础整理

mysql 启动和关闭命令:启动:net start mysql 关闭:net stop mysqlmysql修改密码的命令:use mysql;update user set password=password('12345') where user='root'; 登录的命令:mysql -u root -p 新建登录用户mysql> insert into mysql.user(Host,User<Password)values("localhost","t

JDBC批量插入数据优化,使用addBatch和executeBatch

>>.在之前的玩转JDBC打造数据库操作万能工具类JDBCUtil,加入了高效的数据库连接池,利用了参数绑定有效防止SQL注入中其实忽略了一点,那就是SQL的批量插入的问题,如果来个for循环,执行上万次,肯定会很慢,那么,如何去优化呢? https://www.awaimai.com/841.html 一.用 preparedStatement.addBatch()配合preparedStatement.executeBatch()去批量插入 1 /** 2 * 执行数据库插入操作 4 *

JDBC使用基础

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成. 下面就来说下如何通过JDBC连接数据库: 首先,需要导入连接数据库对应的jar包,导入不再赘述,给个链接https://jingyan.baidu.com/article/2fb0ba4094f51900f3ec5f6a.html 然后,分析一下,jdbc连接数据库的几个基础步骤: 1.注册驱

NFS服务基础及优化

一.NFS主配置文件(默认为空):            /etc/exports        格式:            共享的目录    共享地址1(参数1,参数2,...)    共享地址2(参数1,参数2,...)        注意:            共享目录的本地权限,如果需要读写共享,一定要让本地目录被NFS客户端的用户(nfsnobody)可以读写        重要参数:            rw    读写权限            ro    只读权限