package itcast;

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
     */
    public static void main(String[] args) {
    
    }

static void template() throws Exception {
        Connection conn = null;
        Statement st = null;
        ResultSet rs = null;
        try {
            // 2建立链接
            JdbcUtils.getConnection();
            // 3创建语句
            st = conn.createStatement();
            // 4 执行语句
            rs = st.executeQuery("select * from user");
            // 5处理结果
            while (rs.next()) {
                System.out.println(rs.getObject(1) + "\t" + rs.getObject(2)
                        + "\t" + rs.getObject(3) + "\t" + rs.getObject(4)
                        + "\t" + rs.getObject(5) + "\t");
            }
        } finally {
            JdbcUtils.free(rs, st, conn);
        }
    }

}

*************************************简单方法*********************************************************************

package itcast;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public final class JdbcUtils {
    private static String url = "jdbc:mysql://localhost:3306/test";
    private static String user = "root";
    private static String password = "";

// 私有的构造方法
    private JdbcUtils() {
    }

// 把注册驱动的动作放在静态代码块内
    static {
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            throw new ExceptionInInitializerError(e);
        }
    }

// 建立链接
    public static Connection getConnection() throws SQLException {
        return DriverManager.getConnection(url, user, password);
    }

// 释放资源
    public static void free(ResultSet rs, Statement st, Connection conn) {
        try {
            if (rs != null) {
                rs.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                if (st != null) {
                    st.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                try {
                    if (conn != null) {
                        conn.close();
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

*******************************单例方法 麻烦不推荐**************************************************

package cn.itcast.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public final class JdbcUtilsSing {
    private  String url = "jdbc:mysql://localhost:3306/test";
    private  String user = "root";
    private  String password = "";
    
//    private static JdbcUtilsSing instance = new JdbcUtilsSing();
    private static JdbcUtilsSing instance = null;
    // 私有的构造方法
    private JdbcUtilsSing() {
    }
    
    public static JdbcUtilsSing getInstance(){
        if(instance == null){
            synchronized(JdbcUtilsSing.class){
                if(instance == null){
                    instance = new JdbcUtilsSing();
                }
            }
        }
        return instance;
    }

// 把注册驱动的动作放在静态代码块内
    static {
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            throw new ExceptionInInitializerError(e);
        }
    }

// 建立链接
    public  Connection getConnection() throws SQLException {
        return DriverManager.getConnection(url, user, password);
    }

// 释放资源
    public  void free(ResultSet rs, Statement st, Connection conn) {
        try {
            if (rs != null) {
                rs.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                if (st != null) {
                    st.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                try {
                    if (conn != null) {
                        conn.close();
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

最新文章

  1. 上传文件 隐藏input type="file",用text显示
  2. iBatis的SQL注入
  3. linux中send函数MSG_NOSIGNAL异常消息
  4. (一)观察者模式-C++实现
  5. Android5.0新特性——兼容性(support)
  6. 准确率(Precision)、召回率(Recall)以及F值(F-Measure)
  7. TCP/IP TIME_WAIT状态原理
  8. GitHub开源库排名一百的简单介绍,值得收藏!
  9. CoffeeScript学习(1)——Quick Start
  10. LIS小结(O(∩_∩)O~哄哄)
  11. CSS3动画效果之transition
  12. Asp.NetCore+Microsoft.AspNetCore.SignalR前后端分离
  13. CSS3 box-shadow 属性 紧跟在 -webkit-, -ms- 或 -moz-
  14. Idea导包与打包
  15. 常用的js代码合集
  16. no-sql数据库之redis
  17. kafka的简单理解
  18. ElasticSearh更新nested字段(Array数组)。怎么根据查询条件(query)复制一个(index)到新的Index how to update by query a nested fields data for elasticsearch
  19. [leetcode]314. Binary Tree Vertical Order Traversal二叉树垂直遍历
  20. thrift0.5入门操作

热门文章

  1. POJ2771 Guardian of Decency
  2. 【HDOJ5510】Bazinga(KMP)
  3. CODEVS【1380】没有上司的舞会
  4. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---56
  5. 转:[小北De编程手记] : Selenium For C# 教程目录
  6. POJ 2486 Apple Tree [树状DP]
  7. ssh免秘钥登陆实现
  8. Maven错误“Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.4:create ”解决
  9. 基于Bootstrap的页面排版知识
  10. An error occurred uploading to the iTunes Store - Please upgrade Java