001package bradleyross.local.databases; 002 003import java.sql.SQLException; 004import java.sql.ResultSet; 005 006import bradleyross.library.database.DatabaseProperties; 007 008/** 009 * Information for connecting to databases on my laptop. See 010 * https://babbage.inf.unibz.it/trac/obdapublic/wiki/ObdalibPluginJDBC. 011 * 012 * <p>Postgres Port 5432</p> 013 * 014 * @author Bradley Ross 015 * 016 */ 017public class DatabaseConnection extends DatabaseProperties 018{ 019 020 /** 021 * 022 */ 023 public DatabaseConnection() 024 { ; } 025 /** 026 * Constructor specifying database to be used. 027 * @param value Specifies database to be used. 028 */ 029 public DatabaseConnection(String value) 030 { 031 super(value); 032 } 033 034 /** 035 * Constructor specifying database and database account to be used. 036 * @param systemName Database to be used. 037 * @param accountName Database account to be used. 038 */ 039 public DatabaseConnection(String systemName, String accountName) 040 { 041 super(systemName, accountName); 042 } 043 044 /** 045 * This method specifies a default database and database account. 046 * @see bradleyross.library.database.DatabaseProperties#setDatabaseInstance() 047 */ 048 @Override 049 public void setDatabaseInstance() 050 { 051 setDatabaseInstance("sample", "sample"); 052 } 053 054 /** 055 * This method specifies a default database account to be used for each database. 056 * @see bradleyross.library.database.DatabaseProperties#setDatabaseInstance(java.lang.String) 057 */ 058 @Override 059 public void setDatabaseInstance(String system) 060 { 061 if (system.equalsIgnoreCase("sample")) 062 { 063 setDatabaseInstance("sample", "sample"); 064 } 065 066 } 067 068 /** 069 * 070 * @see bradleyross.library.database.DatabaseProperties#setDatabaseInstance(java.lang.String, java.lang.String) 071 */ 072 @Override 073 public void setDatabaseInstance(String system, String user) 074 { 075 if (system.equalsIgnoreCase("sample") && user.equalsIgnoreCase("sample")) 076 { 077 accountName = "sample"; 078 setPassword("mypass"); 079 portNumber=1521; 080 domainName="localhost"; 081 handlerClass="com.mysql.jdbc.Driver"; 082 connectionString="jdbc:mysql://localhost/sample" + 083 "?sessionVariables=sql_mode='ANSI'"; 084 } 085 else if (system.equalsIgnoreCase("postgre") && user.equalsIgnoreCase("sample")) { 086 accountName = "sample"; 087 setPassword("mypass"); 088 portNumber = 5432; 089 domainName = "localhost"; 090 handlerClass= "org.postgresql.Driver"; 091 connectionString = "jdbc:postgresql://localhost:5432/sample"; 092 } 093 094 } 095 /** 096 * @param args 097 */ 098 public static void main(String[] args) 099 { 100 DatabaseProperties data = new DatabaseConnection(); 101 try 102 { 103 data.connect(); 104 System.out.println("Database connected"); 105 String sqlCode = "SELECT * FROM test"; 106 ResultSet rs = data.executeQuery(sqlCode); 107 while (rs.next()) 108 { 109 System.out.println(Integer.toString(rs.getInt("counter")) + " " + rs.getString("value")); 110 } 111 data.close(); 112 System.out.println("Database closed"); 113 } 114 catch (SQLException e) 115 { 116 System.out.println(e.getClass().getName() + " " + e.getMessage()); 117 e.printStackTrace(System.out); 118 } 119 } 120}