Skip site navigation (1) Skip section navigation (2)

RE: [QUESTIONS] Java and Postgres

From: "Jackson, DeJuan" <djackson(at)cpsgroup(dot)com>
To: Ilhuicatzi Cortes Jose Henry <ic94006(at)conejo(dot)ingenieria(dot)uatx(dot)mx>, pgsql-questions(at)postgreSQL(dot)org
Cc: PostgreSQL Interfaces <pgsql-interfaces(at)postgreSQL(dot)org>
Subject: RE: [QUESTIONS] Java and Postgres
Date: 1998-05-06 22:30:44
Message-ID: F10BB1FAF801D111829B0060971D839F271788@dal_cps.cpsgroup.com (view raw or flat)
Thread:
Lists: pgsql-interfaces
Make sure the postmaster is running with the -i option enabled.  Java
uses TCP/IP to connect.

I'm forwarding you to the INTERFACES list just in case it's something
more.
	-DEJ

> -----Original Message-----
> From:	Ilhuicatzi Cortes Jose Henry
> [SMTP:ic94006(at)conejo(dot)ingenieria(dot)uatx(dot)mx]
> Sent:	Wednesday, May 06, 1998 7:14 PM
> To:	pgsql-questions(at)postgreSQL(dot)org
> Subject:	[QUESTIONS] Java and Postgres
> 
> 
> 
> Hi:
>       I'm trying to make an application with Java and Postgresql. The
>    application will be made for Win95 plataform.
> 
>       I'm makiing tests of connection wiht a postgres program example
>    which is Basic.java, in the example url,database,usr and password
> are
>    directly into the program. The program is below.
> 
> import java.io.*;
> import java.sql.*;
> import java.text.*;
> 
> /**
>  * This example tests the basic components of the JDBC driver, and
> shows
>  * how even the simplest of queries can be implemented.
>  *
>  * To use this example, you need a database to be in existence. This
> example
>  * will create a table called basic.
>  *
>  */
> 
> public class Basic
> {
>   Connection db;	// The connection to the database
>   Statement  st;	// Our statement to run queries with
>   
>   public Basic() throws ClassNotFoundException, FileNotFoundException,
> IOException, SQLException
>   {
>     String url = "jdbc:postgresql://148.219.122.11:5432/ic94006";
>     String usr = "ic94006";
>     String pwd = "???????";
>     
>     // Load the driver
>     Class.forName("postgresql.Driver");
> 
>     // Connect to database
>     System.out.println("Connecting to Database URL = " + url);
>     db = DriverManager.getConnection(url, usr, pwd);
>     
>     System.out.println("Connected...Now creating a statement");
>     st = db.createStatement();
>     
>     // Clean up the database (in case we failed earlier) then
> initialise
>     cleanup();
>     
>     // Now run tests using JDBC methods
>     doexample();
>     
>     // Clean up the database
>     cleanup();
>     
>     // Finally close the database
>     System.out.println("Now closing the connection");
>     st.close();
>     db.close();
>     
>   }
>   
>   /**
>    * This drops the table (if it existed). No errors are reported.
>    */
>   public void cleanup()
>   {
>     try {
>       st.executeUpdate("drop table basic");
>     } catch(Exception ex) {
>       // We ignore any errors here
>     }
>   }
>   
>   /**
>    * This performs the example
>    */
>   public void doexample() throws SQLException
>   {
>     System.out.println("\nRunning tests:");
>     
>     // First we need a table to store data in
>     st.executeUpdate("create table basic (a int2, b int2)");
>     
>     // Now insert some data, using the Statement
>     st.executeUpdate("insert into basic values (1,1)");
>     st.executeUpdate("insert into basic values (2,1)");
>     st.executeUpdate("insert into basic values (3,1)");
>     
>     // For large inserts, a PreparedStatement is more efficient,
> because it
>     // supports the idea of precompiling the SQL statement, and to
> store
>     // directly, a Java object into any column. PostgreSQL doesnt
> support
>     // precompiling, but does support setting a column to the value of
> a
>     // Java object (like Date, String, etc).
>     //
>     // Also, this is the only way of writing dates in a datestyle
> independent
>     // manner. (DateStyles are PostgreSQL's way of handling different
> methods
>     // of representing dates in the Date data type.)
>     PreparedStatement ps = db.prepareStatement("insert into basic
> values (?,?)");
>     for(int i=2;i<5;i++) {
>       ps.setInt(1,4);		// "column a" = 5
>       ps.setInt(2,i);		// "column b" = i
>       ps.executeUpdate();	// executeUpdate because insert returns
> no data
>     }
>     ps.close();			// Always close when we are done
> with it
>     
>     // Finally perform a query on the table
>     System.out.println("performing a query");
>     ResultSet rs = st.executeQuery("select a, b from basic");
>     if(rs!=null) {
>       // Now we run through the result set, printing out the result.
>       // Note, we must call .next() before attempting to read any
> results
>       while(rs.next()) {
> 	int a = rs.getInt("a");	// This shows how to get the value by
> name
> 	int b = rs.getInt(2);	// This shows how to get the value by
> column
> 	System.out.println("  a="+a+" b="+b);
>       }
>       rs.close();	// again, you must close the result when done
>     }
>     
>     // Now run the query again, showing a more efficient way of
> getting the
>     // result if you don't know what column number a value is in
>     System.out.println("performing another query");
>     rs = st.executeQuery("select * from basic where b>1");
>     if(rs!=null) {
>       // First find out the column numbers.
>       //
>       // It's best to do this here, as calling the methods with the
> column
>       // numbers actually performs this call each time they are
> called. This
>       // really speeds things up on large queries.
>       //
>       int col_a = rs.findColumn("a");
>       int col_b = rs.findColumn("b");
>       
>       // Now we run through the result set, printing out the result.
>       // Again, we must call .next() before attempting to read any
> results
>       while(rs.next()) {
> 	int a = rs.getInt(col_a); // This shows how to get the value by
> name
> 	int b = rs.getInt(col_b); // This shows how to get the value by
> column
> 	System.out.println("  a="+a+" b="+b);
>       }
>       rs.close();	// again, you must close the result when done
>     }
>     
>     // The last thing to do is to drop the table. This is done in the
>     // cleanup() method.
>   }
>   
>   /**
>    * Display some instructions on how to run the example
>    */
>   public static void instructions()
>   {
>     System.out.println("\nThis example tests the basic components of
> the JDBC driver, demonstrating\nhow to build simple queries in
> java.\n");
>     System.out.println("Useage:\n java example.basic
> jdbc:postgresql:database user password [debug]\n\nThe debug field can
> be anything. It's presence will enable DriverManager's\ndebug trace.
> Unless you want to see screens of items, don't put anything in\
> nhere.");
>     System.exit(1);
>   }
>   
>   /**
>    * This little lot starts the test
>    */
>   public static void main(String args[])
>   {
>     System.out.println("PostgreSQL basic test v6.3 rev 1\n");
>     
>     //if(args.length<3)
>     //  instructions();
>     
>     // This line outputs debug information to stderr. To enable this,
> simply
>     // add an extra parameter to the command line
>     
>     DriverManager.setLogStream(System.err);
>     
>     // Now run the tests
>     try {
>       Basic test = new Basic();
>     } catch(Exception ex) {
>       System.err.println("Exception caught.\n"+ex);
>       ex.printStackTrace();
>     }
>   }
> }
> 
>    The problem occurs when i run this program from Win95 and the Java
> releases
>   next exception.
> 
>   DriverManager.initialize: jdbc.drivers = null
>   JDBC DriverManager initialized
>   registerDriver: driver [className = postgresql.Driver,context=null,
>      postgresql(dot)Driver(at)1cc771
>   Connecting to Database URL =
> jdbc:postgresql://148.219.122.11:5432/ic94006 
> 
> DriverManager.getConnection("jdbc:postgresql://148.219.122.11:5432/ic9
> 4006")
> 
> java.sql.SQL.Exception:Connection failed:java.net.ConnectException
> Connection refused
>   at postgresql.Connection.<init> (Connection.java:184)
>   at postgresql.Driver.connect(Driver.java:87)
> 
> getConnection failed: java.sql.SQLException: Connection failed:
> java.net.ConnectException: Connection refused
> Exception caught.
> java.sql.SQLException: Connection failed: java.net.ConnectException:
> Connection refused
>   at postgresql.Connection.<init>(Connection.java: 184)
>   at postgresql.Driver.connect(Driver.java:87)
> 
> 
> 
>   I think that problem is in the port number, i use 5423 in port
> number but
>  i don't know if this port number is OK, or can i use other port
> number?
> 
>  i use Java class that came with Postgresql and i think that run
> correctly,
> but when i run the program, Java releases those exceptions.
> 
>   If my program have any error i hope that yours notice me.
> 
>   Thanks.
> J. Henry Ilhuicatzi Cortes.
> Universidad Autonoma de Tlaxcala
>   
> 
> --
> Official WWW Site: http://www.postgresql.org
> Online Docs & FAQ: http://www.postgresql.org/docs
> Searchable Lists: http://www.postgresql.org/mhonarc

pgsql-interfaces by date

Next:From: Arthur AlacarDate: 1998-05-07 00:43:09
Subject: openlinkODBC3.0
Previous:From: Brett W. McCoyDate: 1998-05-06 20:35:47
Subject: Re: [QUESTIONS] Re: pgaccess,... OK What are the steps ????

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group