Package org.hibernate.connection

Examples of org.hibernate.connection.ConnectionProvider


    tx.commit();
    s.close();
  }

  public void testUserProvidedConnection() throws Exception {
    ConnectionProvider dcp = new DriverManagerConnectionProvider();
    dcp.configure( Environment.getProperties() );
    Session s = getSessions().openSession( dcp.getConnection() );
    Transaction tx = s.beginTransaction();
    s.createQuery( "from Fo" ).list();
    tx.commit();
    Connection c = s.disconnect();
    assertTrue( c!=null );
View Full Code Here


    System.gc();
  }

  public void testJdbcOnly() throws Exception {

    ConnectionProvider cp = ConnectionProviderFactory.newConnectionProvider( Environment.getProperties() );

    for ( int n=2; n<4000; n*=2 ) {

      Session s = openSession();
      Simple[] simples = new Simple[n];
      s.delete("from Simple");
      s.flush();
      Serializable[] ids = new Serializable[n];
      for ( int i=0; i<n; i++ ) {
        simples[i] = new Simple();
        simples[i].init();
        simples[i].setCount(i);
        ids[i] = new Long(i);
        s.save(simples[i], ids[i]);
      }
      s.flush();
      s.connection().commit();
      s.close();


      //Now do timings

      Connection c = cp.getConnection();
      long time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j1" );
      long jdbc = System.currentTimeMillis() - time;
      cp.closeConnection(c);

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      System.out.println( "Objects: " + n + " Direct JDBC: " + jdbc );

    }

    cp.close();
    System.gc();
  }
View Full Code Here

    TestRunner.run( suite() );
  }

  public void testMany() throws Exception {

    ConnectionProvider cp = ConnectionProviderFactory.newConnectionProvider( Environment.getProperties() );

    long hiber=0;
    long jdbc=0;

    for ( int n=0; n<20; n++ ) {

      Simple[] simples = new Simple[n];
      Serializable[] ids = new Serializable[n];
      for ( int i=0; i<n; i++ ) {
        simples[i] = new Simple();
        simples[i].init();
        simples[i].setCount(i);
        ids[i] = new Long(i);
      }

      //allow cache to settle

      Session s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      Connection c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      //Now do timings

      int N=30;

      long time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        s = openSession();
        hibernate(s, simples, ids, n, "h1");
        s.close();
      }
      hiber += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        c = cp.getConnection();
        directJDBC( c, simples, ids, n, "j1" );
        cp.closeConnection(c);
      }
      jdbc += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        s = openSession();
        hibernate(s, simples, ids, n, "h2");
        s.close();
      }
      hiber += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        c = cp.getConnection();
        directJDBC( c, simples, ids, n, "j2" );
        cp.closeConnection(c);
      }
      jdbc += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        s = openSession();
        hibernate(s, simples, ids, n, "h1");
        s.close();
      }
      hiber += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        c = cp.getConnection();
        directJDBC( c, simples, ids, n, "j1" );
        cp.closeConnection(c);
      }
      jdbc += System.currentTimeMillis() - time;

    }

    System.out.println( "Hibernate: " + hiber + "ms / Direct JDBC: " + jdbc + "ms = Ratio: " + ( (float) hiber )/jdbc );

    cp.close();
    System.gc();
  }
View Full Code Here

    System.gc();
  }

  public void testSimultaneous() throws Exception {

    ConnectionProvider cp = ConnectionProviderFactory.newConnectionProvider( Environment.getProperties() );

    for ( int n=2; n<4000; n*=2 ) {

      Simple[] simples = new Simple[n];
      Serializable[] ids = new Serializable[n];
      for ( int i=0; i<n; i++ ) {
        simples[i] = new Simple();
        simples[i].init();
        simples[i].setCount(i);
        ids[i] = new Long(i);
      }

      //allow cache to settle

      Session s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      Connection c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      //Now do timings

      s = openSession();
      long time = System.currentTimeMillis();
      hibernate(s, simples, ids, n, "h1");
      long hiber = System.currentTimeMillis() - time;
      s.close();

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j1" );
      long jdbc = System.currentTimeMillis() - time;
      cp.closeConnection(c);

      s = openSession();
      time = System.currentTimeMillis();
      hibernate(s, simples, ids, n, "h2");
      hiber += System.currentTimeMillis() - time;
      s.close();

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      s = openSession();
      time = System.currentTimeMillis();
      hibernate(s, simples, ids, n, "h2");
      hiber += System.currentTimeMillis() - time;
      s.close();

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      System.out.println( "Objects: " + n + " - Hibernate: " + hiber + "ms / Direct JDBC: " + jdbc + "ms = Ratio: " + ( (float) hiber )/jdbc );

    }

    cp.close();
    System.gc();
  }
View Full Code Here

    System.gc();
  }

  public void testJdbcOnly() throws Exception {

    ConnectionProvider cp = ConnectionProviderFactory.newConnectionProvider( Environment.getProperties() );

    for ( int n=2; n<4000; n*=2 ) {

      Simple[] simples = new Simple[n];
      Serializable[] ids = new Serializable[n];
      for ( int i=0; i<n; i++ ) {
        simples[i] = new Simple();
        simples[i].init();
        simples[i].setCount(i);
        ids[i] = new Long(i);
      }

      //Now do timings

      Connection c = cp.getConnection();
      long time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j1" );
      long jdbc = System.currentTimeMillis() - time;
      cp.closeConnection(c);

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      System.out.println( "Objects: " + n + " Direct JDBC: " + jdbc );

    }

    cp.close();
    System.gc();
  }
View Full Code Here

    TestRunner.run( suite() );
  }

  public void testMany() throws Exception {

    ConnectionProvider cp = ConnectionProviderFactory.newConnectionProvider( Environment.getProperties() );

    long hiber=0;
    long jdbc=0;

    for ( int n=0; n<20; n++ ) {

      Session s = openSession();
      s.delete("from Simple");
      s.flush();
      Simple[] simples = new Simple[n];
      Serializable[] ids = new Serializable[n];
      for ( int i=0; i<n; i++ ) {
        simples[i] = new Simple();
        simples[i].init();
        simples[i].setCount(i);
        ids[i] = new Long(i);
        s.save(simples[i], ids[i]);
      }
      s.flush();
      s.connection().commit();
      s.close();

      //allow cache to settle

      s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      Connection c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      //Now do timings

      int N=30;

      long time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        s = openSession();
        hibernate(s, simples, ids, n, "h1");
        s.close();
      }
      hiber += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        c = cp.getConnection();
        directJDBC( c, simples, ids, n, "j1" );
        cp.closeConnection(c);
      }
      jdbc += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        s = openSession();
        hibernate(s, simples, ids, n, "h2");
        s.close();
      }
      hiber += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        c = cp.getConnection();
        directJDBC( c, simples, ids, n, "j2" );
        cp.closeConnection(c);
      }
      jdbc += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        s = openSession();
        hibernate(s, simples, ids, n, "h1");
        s.close();
      }
      hiber += System.currentTimeMillis() - time;

      time = System.currentTimeMillis();
      for (int i=0; i<N; i++) {
        c = cp.getConnection();
        directJDBC( c, simples, ids, n, "j1" );
        cp.closeConnection(c);
      }
      jdbc += System.currentTimeMillis() - time;

    }

    System.out.println( "Hibernate: " + hiber + "ms / Direct JDBC: " + jdbc + "ms = Ratio: " + ( (float) hiber )/jdbc );

    cp.close();
    System.gc();
  }
View Full Code Here

    System.gc();
  }

  public void testSimultaneous() throws Exception {

    ConnectionProvider cp = ConnectionProviderFactory.newConnectionProvider( Environment.getProperties() );

    for ( int n=2; n<4000; n*=2 ) {

      Session s = openSession();
      s.delete("from Simple");
      s.flush();
      Simple[] simples = new Simple[n];
      Serializable[] ids = new Serializable[n];
      for ( int i=0; i<n; i++ ) {
        simples[i] = new Simple();
        simples[i].init();
        simples[i].setCount(i);
        ids[i] = new Long(i);
        s.save(simples[i], ids[i]);
      }
      s.flush();
      s.connection().commit();
      s.close();

      //allow cache to settle

      s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      Connection c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      s = openSession();
      hibernate(s, simples, ids, n, "h0");
      s.close();

      c = cp.getConnection();
      directJDBC( c, simples, ids, n, "j0" );
      cp.closeConnection(c);

      //Now do timings

      s = openSession();
      long time = System.currentTimeMillis();
      hibernate(s, simples, ids, n, "h1");
      long hiber = System.currentTimeMillis() - time;
      s.close();

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j1" );
      long jdbc = System.currentTimeMillis() - time;
      cp.closeConnection(c);

      s = openSession();
      time = System.currentTimeMillis();
      hibernate(s, simples, ids, n, "h2");
      hiber += System.currentTimeMillis() - time;
      s.close();

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      s = openSession();
      time = System.currentTimeMillis();
      hibernate(s, simples, ids, n, "h2");
      hiber += System.currentTimeMillis() - time;
      s.close();

      c = cp.getConnection();
      time = System.currentTimeMillis();
      directJDBC( c, simples, ids, n, "j2" );
      jdbc += System.currentTimeMillis() - time;
      cp.closeConnection(c);

      System.out.println( "Objects: " + n + " - Hibernate: " + hiber + "ms / Direct JDBC: " + jdbc + "ms = Ratio: " + ( (float) hiber )/jdbc );

    }

    cp.close();
    System.gc();
  }
View Full Code Here

   * @see org.hibernate.engine.SessionFactoryImplementor#getConnectionProvider
   * @see LocalDataSourceConnectionProvider
   */
  public static DataSource getDataSource(SessionFactory sessionFactory) {
    if (sessionFactory instanceof SessionFactoryImplementor) {
      ConnectionProvider cp = ((SessionFactoryImplementor) sessionFactory).getConnectionProvider();
      if (cp instanceof LocalDataSourceConnectionProvider) {
        return ((LocalDataSourceConnectionProvider) cp).getDataSource();
      }
    }
    return null;
View Full Code Here

   * @see org.hibernate.engine.SessionFactoryImplementor#getConnectionProvider
   * @see LocalDataSourceConnectionProvider
   */
  public static DataSource getDataSource(SessionFactory sessionFactory) {
    if (sessionFactory instanceof SessionFactoryImplementor) {
      ConnectionProvider cp = ((SessionFactoryImplementor) sessionFactory).getConnectionProvider();
      if (cp instanceof LocalDataSourceConnectionProvider) {
        return ((LocalDataSourceConnectionProvider) cp).getDataSource();
      }
    }
    return null;
View Full Code Here

   * @see org.hibernate.engine.SessionFactoryImplementor#getConnectionProvider
   * @see LocalDataSourceConnectionProvider
   */
  public static DataSource getDataSource(SessionFactory sessionFactory) {
    if (sessionFactory instanceof SessionFactoryImplementor) {
      ConnectionProvider cp = ((SessionFactoryImplementor) sessionFactory).getConnectionProvider();
      if (cp instanceof LocalDataSourceConnectionProvider) {
        return ((LocalDataSourceConnectionProvider) cp).getDataSource();
      }
    }
    return null;
View Full Code Here

TOP

Related Classes of org.hibernate.connection.ConnectionProvider

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.