zoukankan      html  css  js  c++  java
  • Java mysql数据库连接Demo1

    public class MysqlUtil {
        /**
         * 链接数据库
         */
        /**
         * 方法一:
         * 加载驱动的方法不止一种,但这种最常用
          */
        public static Connection getConnectionOne(String database,String username,String password){
            try {
                Class.forName("com.mysql.jdbc.Driver");
                Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/"+database,username,
                        password);
                return connection;
            }catch(Exception e){
                e.printStackTrace();
            }
            return null;
        }
        /**
         * 方法二:
         * 利用properties文件
         * ::::: 在Web 编程时 文件难以定位
          */
        public static Connection getConnectionTwo() {
            /**
             * 建立文件
             */
            Properties pro = new Properties();
    
            InputStream in = MysqlUtil.class.getClassLoader().getResourceAsStream("mysqllog.properties");
            try {
                pro.load(in);
                Class.forName(pro.getProperty("driver"));
                String username = pro.getProperty("user");
                String password = pro.getProperty("password");
                String database = pro.getProperty("database");
                String url = pro.getProperty("url");
    
                Connection connection = DriverManager.getConnection(url+database,username,password);
                return connection;
            } catch (Exception e) {
                e.printStackTrace();
            }
    
            return null;
        }
        // Connection ,Statement, ResultSet 这几个资源的关闭是有顺序的
        public static void close (Object...objects) throws MysqlCloseException {
            Map<String,Object> map = new HashMap();
            for(Object o : objects){
                if(o instanceof ResultSet){
                    map.put("ResultSet",o);
                }else if(o instanceof Connection){
                    map.put("Connection",o);
                }else if(o instanceof Statement){
                    map.put("Statement",o);
                }else if(o instanceof PreparedStatement){
                    map.put("PreparedStatement",o);
                }else{
                    throw new MysqlCloseException("关闭异常,不能处理");
                }
            }
            Object obj = map.get("ResultSet");
            if(obj!=null){
                ResultSet r = (ResultSet)obj;
                try {
                    r.close();
                    map.remove("ResultSet");
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            obj = map.get("PreparedStatement");
            if(obj!=null){
                PreparedStatement p = (PreparedStatement)obj;
                try {
                    p.close();
                    map.remove("PreparedStatement");
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            obj = map.get("Statement");
            if(obj!=null){
                Statement s = (Statement)obj;
                try {
                    s.close();
                    map.remove("Statement");
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            obj = map.get("Connection");
            if(obj!=null){
                Connection c = (Connection)obj;
                try{
                    c.close();
                    map.remove("Connection");
                }catch(SQLException e){
                    e.printStackTrace();
                }
            }
        }
    }
  • 相关阅读:
    javascript回调函数笔记
    JavaScript回调函数的实现
    深入理解JS执行细节(写的很精辟)
    javascript中return function与return function()的区别
    windows下dubbo-admin2.6.x之后版本的安装
    shiro经典通俗易懂javase例子
    字符串转数字练习--String to Integer (atoi)
    字符串按照Z旋转90度然后上下翻转的字形按行输出字符串--ZigZag Conversion
    SQL ----post漏洞测试注入
    nginx笔记----解决windows80端口被iis占用
  • 原文地址:https://www.cnblogs.com/Diyo/p/11421665.html
Copyright © 2011-2022 走看看