JDBC

作者: 大批 | 来源:发表于2017-01-08 15:38 被阅读8次

JDBC(java database connection)

/**
  * jdbc 四大参数
  *   driverClassName : com.mysql.jdbc.Driver
  *   url : jdbc:mysql://localhost:3306/database
  *   username : root
  *   password : yuxing2012
  * 
  */
  Class.forName("com.mysql.jdbc.Driver");
  String url = "jdbc:mysql://localhost:3306/demo";
  String username= "root";
  String password = "yuxing2012";
  Connection connection = DriverManager.getConnection(url, username, password);
  System.out.println(connection);

Statement

  • executeUpdate(String sql ); // DDL DML
  • executeQuery(String sql);
  Statement statement = connection.createStatement();
  String sql = "INSERT INTO user(user_name,user_number) VALUES('dapi_"+new Random().nextInt(200)+"','12101010320')";
  int i = statement.executeUpdate(sql);
  System.out.println("i  "+i);
        
        
  //执行查询
  /**
    * 1 得到connection
    * 2 得到Statement
    * 3 解析查询返回的表格对象
    */
  String querySql = "SELECT * FROM user";
  ResultSet resultSet = statement.executeQuery(querySql);
  System.out.println("resultSet "+resultSet);
  resultSet.beforeFirst();//第一条记录的前面
  while(resultSet.next()){
    int id = resultSet.getInt("user_id");
    String name = resultSet.getString("user_name");
    String number = resultSet.getString("user_number");
    System.out.println("id  "+id+"   name  "+name+"   number "+number);
   }
        
  resultSet.close();
  statement.close();
  connection.close();

PreparedStatement

String inSql = "INSERT INTO user(user_name,user_number) VALUES(?,?)";
PreparedStatement prepareStatement = connection.prepareStatement(inSql);
prepareStatement.setString(1,"dapi");
prepareStatement.setString(2,"12101010320");
int update = prepareStatement.executeUpdate();
System.out.println("update  "+update);

Transation

connection.setAutoCommit(false);
// ..do something
connection.commit();
//or 
connection.rollback();

//事务的隔离级别
connection.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
connection.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED);
connection.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);
connection.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);


DBCP

  • 依赖的jar commons-dbcp.jar commons-pool.jar
BasicDataSource source = new BasicDataSource();
source.setDriverClassName("");
source.setUrl("");
source.setUsername("");
source.setPassword("");
source.setMaxWaitMillis(2000);
        
Connection connection2 = source.getConnection();
connection2.close(); // to the pool

C3P0

  • 依赖的jar c3p0.jar mchange-commons.jar
//c3p0
ComboPooledDataSource source2 = new ComboPooledDataSource();

Nothing is certain in this life. The only thing i know for sure is that. I love you and my life. That is the only thing i know. have a good day

:)

相关文章

  • JDBC

    JDBC原理: JDBC: 抽取JDBC工具类 : JDBCUtils JDBC控制事务:

  • JDBC 的使用

    JDBC JDBC什么是JDBCJDBC 的使用JDBC 的数据类型 什么是JDBC JDBC(Java Data...

  • Java和MySQL简建立连接

    JDBC JDBC插入多条数据 JDBC查询 JDBC动态传参 JDBC回滚 JDBC将数据库中的信息装入List...

  • JDBC

    JDBC JDBC:Java DataBase Connectivity JDBC的本质是什么?JDBC是SUN公...

  • java异常合集

    jdbc com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExce...

  • Day05--JDBC

    JDBC: 抽取JDBC工具类:JDBCUtils JDBC控制事务

  • JDBC

    JDBC: 抽取JDBC工具类 : JDBCUtils JDBC控制事务:

  • JDBC编程目录

    JDBC编程目录 SQL基础JDBC基础JDBC进阶

  • JDBC和数据库连接池

    1.JDBC介绍1.1 1.1 JDBC介绍 2.JDBC之API2.1 2.1 JDBC之API 3.JDBC例...

  • # day10_JDBC基础

    一,JDBC概述 1.为什么要使用JDBC 1.1没有JDBC 1.2有了JDBC后 2.JDBC的概念 2.1....

网友评论

      本文标题:JDBC

      本文链接:https://www.haomeiwen.com/subject/sbvqbttx.html