Advertisement
Guest User

Untitled

a guest
Aug 15th, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. /*
  2. <dependency>
  3. <groupId>postgresql</groupId>
  4. <artifactId>postgresql</artifactId>
  5. <version>9.1-901.jdbc4</version>
  6. </dependency>
  7. */
  8.  
  9. package se.uhr.nya.application;
  10.  
  11. import java.sql.Driver;
  12. import java.sql.DriverManager;
  13. import java.util.Optional;
  14.  
  15. import javax.sql.DataSource;
  16.  
  17. import org.postgresql.ds.PGSimpleDataSource;
  18. import org.slf4j.Logger;
  19. import org.slf4j.LoggerFactory;
  20.  
  21. public class PostgresDataSourceFactory {
  22.  
  23. public static final Logger log = LoggerFactory.getLogger(PostgresDataSourceFactory.class);
  24.  
  25. /*
  26. * Run with VM Environment -Ddb2pass=password -Ddb2host=host
  27. */
  28. public static DataSource createDataSource() throws Exception {
  29. String jdbcClassName = "org.postgresql.Driver";
  30.  
  31. String dbname = fromSystemProperty("db2dbname").orElse("postgres");
  32. String user = fromSystemProperty("db2user").orElse("postgres");
  33. String password = fromSystemProperty("db2pass").orElse("secretpassword");
  34. String db2host = fromSystemProperty("db2host").orElse("localhost");
  35.  
  36. DriverManager.registerDriver((Driver) Class.forName(jdbcClassName).newInstance());
  37.  
  38. PGSimpleDataSource dataSource = new PGSimpleDataSource();
  39. dataSource.setDatabaseName(dbname);
  40. dataSource.setServerName(db2host);
  41. dataSource.setPortNumber(5432);
  42. dataSource.setUser(user);
  43. dataSource.setPassword(password);
  44.  
  45. return dataSource;
  46. }
  47.  
  48. private static Optional<String> fromSystemProperty(String systemprop) {
  49. return Optional.ofNullable(System.getProperty(systemprop));
  50. }
  51.  
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement