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();
                }
            }
        }
    }
  • 相关阅读:
    jquery 滚动条插件 jquery.nanoscroller.js
    Lost connection to MySQL server at 'reading initial communication packet' 错误解决
    ajax上传图片 jquery插件 jquery.form.js 的方法 ajaxSubmit; AjaxForm与AjaxSubmit的差异
    转:MVC3系列:~Html.BeginForm与Ajax.BeginForm
    转:MVC2表单验证失败后,直接返回View,已填写的内容就会清空,可以这样做;MVC2输出文本;MVC2输出PDF文件
    Java中的Dom4j
    Java插件之Jrebel
    Idea中的一些快捷键
    Java中的XML
    SQL Server 表值函数
  • 原文地址:https://www.cnblogs.com/Diyo/p/11421665.html
Copyright © 2011-2022 走看看