zoukankan      html  css  js  c++  java
  • jdbc链接基础

    1 jdbc 链接两种方式,通过jdbc链接mysql数据库,url:jdbc:mysql://ip:端口[/database name]

    通过什么驱动器,链接什么数据库,数据库的ip,连接端口,可以在url中加上连接的数据库名。

    1)使用驱动器获取链接

            Driver driver = new com.mysql.jdbc.Driver();
            props.setProperty("user", "root");
            props.setProperty("password", "root");
            Connection conn = driver.connect(url, props);
            
            System.out.println(conn);
            conn.close();    

    2) 使用驱动管理器获取链接

            Class.forName("com.mysql.jdbc.Driver");
            props.setProperty("user", "root");
            props.setProperty("password", "root");
            
            Connection conn = DriverManager.getConnection(url,props);
            System.out.println(conn);
            conn.close();

    DriverManager 数据库驱动器管理类,用于管理所有注册的驱动器。

      1)registerDriver(driver)注册驱动器

      2)getConnection(url,properties) 获取链接

    Interface Connection 常用方法

      1) Statement createStatement()  

      2)PreparedStatement prepareStatement(String sql)  

     

     

    Interface Statement 用于执行静态SQL语句, 常用方法

      1)executeLargeUpdate(String sql) 

      2)executeQuery(String sql) 

     

    Interface PreparedStatement 用于执行预编译SQL语句,

      1)int executeUpdate()  

      2)ResultSet executeQuery() 

     

    Interface CallableStatement 用于执行存储过程的SQL语句

      1)ResultSet executeQuery() 

     

    Interface ResultSet 查询结果

      1)boolean next()  //判断下一行是否为空

     

     PreparedStatement 有一些优势相对于 Statement

    1)可以防注入

    2)对于数据库带缓冲区的更高效

    3)语法不同,可以使用预编译的SQL

    所以:以后推荐使用PreparedStatement

     

    2 所有调用存储过程的的SQL语句都是使用executeQuery方法执行。

     

    二、使用数据库时可能会使用配置文件进行用户名、数据库、密码之类的数据存储。此时如果使用properties文件存储。需要注意文件的加载路径。

    推荐使用类加载路径,其中“/”表示classpath根目录,在 java 项目中表示 bin/ 目录,在 java web 项目中,表示 WEB-INF/classes 目录

    在静态方法中:类名.class.getResourceAsStream("/") 表示获取类加载的根路径,如果不加 "/" 获取当前类的加载目录

    在动态方法中:this.getClass().getResourceAsStream("")

     

  • 相关阅读:
    C3P0连接池详解及配置
    解决a different object with the same identifier value was already associated with the session错误
    sudo su 提示没有配置JDK environment
    MySQL 5.6 双机热备
    如何用myeclispe远程调试tomcat
    Incorrect string value: '\xF0\xA1\xA1\x92' for column 'herst' at row 1
    Mysql 慢查询设置
    Mysql的主从数据库没有同步的解决办法
    新的启程
    ASP.NET程序中常用的三十三种代码
  • 原文地址:https://www.cnblogs.com/zhaopengcheng/p/6675135.html
Copyright © 2011-2022 走看看