zoukankan      html  css  js  c++  java
  • JDBC 使用和配置

    /**
     * 数据库工具类,封装数据库操作中多次使用的数据库操作代码
     * @author Administrator
     *
     */
    public class DBUtils {
    	
    	public static Connection getConnection() {
    
    		Connection connection = null;
    		try {
    
    			Class.forName("com.mysql.jdbc.Driver");
    
    			String databaseName = "jdbc_test";
    			String url = "jdbc:mysql://localhost:3306/" + databaseName;
    			String user = "root";
    			String password = "111";
    
    			connection = DriverManager.getConnection(url, user, password);
    
    		} catch (ClassNotFoundException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		return connection;
    
    	}
    
    }
    

    *Connection connection = DBUtils.getConnection(); 

    *PreparedStatement preparedStatement = connection.prepareStatement(sql);

    *ResultSet resultSet = preparedStatement.executeQuery();

    以上三个流都需要进行关闭  也都可以用try - with - resource 进行关闭  (自动关闭  不需要手动)

     *   jdbc.properties

    url=jdbc:mysql://localhost:3306/test104
    user=root
    password=123456

    package com.zhiyou100.util;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import java.util.Properties;
    
    public enum DBUtils {
    
    	/*
    	 * 单例通过枚举实现,枚举最后一个单词后以 ; 结尾
    	 * 构造方法都是 private 修饰,不让通过 new 构造方法创建对象
    	 * static 方法中只能使用 static 变量,不能使用类的实例变量(属性,全局变量)
    	 */
    	INSTANCE;
    	
    	private String url;
    	
    	private String user;
    	
    	private String password;
    	
    	private DBUtil() {
    		try {
    			InputStream inputStream = DBUtils.class.getClassLoader().getResourceAsStream("jdbc.properties");
    
    			Properties properties = new Properties();
    			
    			properties.load(inputStream);
    			
    			url = properties.getProperty("url");
    
    			user = properties.getProperty("user");
    
    			password = properties.getProperty("password");
    		} catch (IOException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    	
    	public Connection getConnection() {
    
    		Connection conn = null;
    
    		try {
    
    			Class.forName("com.mysql.jdbc.Driver");
    
    			// 读取编译后的 class 文件夹下的某一个文件
    			conn = DriverManager.getConnection(url, user, password);
    
    		} catch (ClassNotFoundException e) {
    
    			e.printStackTrace();
    		} catch (SQLException e) {
    
    			e.printStackTrace();
    		} 
    
    		return conn;
    	}
    }
    

      

     

  • 相关阅读:
    WebService及WCF获取客户端IP,端口
    单链表创建,删除节点,获取元素(与线性表比较)
    c语言描述简单的线性表,获取元素,删除元素,
    解决wamp mysql数据库出现乱码的问题。
    c语言将2进制数转化为10进制数(栈的初始化,进栈,出栈)
    c++描述将一个2进制数转化成10进制数(用到初始化栈,进栈,入栈)
    css各兼容应该注意的问题
    C++需要注意的地方和小算法
    php最简单的文件处理。
    C++ 一目了然虚基类!
  • 原文地址:https://www.cnblogs.com/niuxiao12---/p/7418896.html
Copyright © 2011-2022 走看看