Advertisement
Guest User

TestDBConnector

a guest
Nov 6th, 2017
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.93 KB | None | 0 0
  1. package py.com.personal.tasacion.roaming.servicios.comunes;
  2.  
  3. import com.mchange.v2.c3p0.ComboPooledDataSource;
  4.  
  5. import org.apache.ibatis.mapping.Environment;
  6. import org.apache.ibatis.session.Configuration;
  7. import org.apache.ibatis.session.SqlSession;
  8. import org.apache.ibatis.session.SqlSessionFactory;
  9. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  10. import org.apache.ibatis.transaction.TransactionFactory;
  11. import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory;
  12. import org.slf4j.Logger;
  13.  
  14. import py.com.personal.bc.common.utils.props.ApplicationProperties;
  15. import py.com.personal.bc.mybatis.utils.DBConnector;
  16. import py.com.personal.bc.mybatis.utils.MapperPackagesUtil;
  17. import py.com.personal.bc.shared.mybatis.mapper.DireccionPrestadoraMapper;
  18.  
  19. import javax.annotation.PostConstruct;
  20. import javax.inject.Inject;
  21.  
  22.  
  23. public class TestDBConnector implements DBConnector {
  24.  
  25. private SqlSessionFactory factory;
  26.  
  27. @Inject
  28. ApplicationProperties appProps;
  29.  
  30. @Inject
  31. MapperPackagesUtil mapperPackagesUtil;
  32.  
  33. @Inject
  34. Logger logger;
  35.  
  36. @PostConstruct
  37. public void init() {
  38. try {
  39. configureAtlasFactory();
  40. } catch (Exception e) {
  41. logger.error("No se ha podido inicializar la conexion a Atlas, se cierra la aplicacion", e);
  42. System.exit(0);
  43. }
  44.  
  45. }
  46.  
  47. public void configureAtlasFactory() throws Exception {
  48.  
  49.  
  50. logger.info("Iniciando conexion a BD Atlas");
  51. ComboPooledDataSource cpds = new ComboPooledDataSource();
  52. cpds.setDriverClass("org.postgresql.Driver");
  53. String jdbcUrl = "jdbc:postgresql://" + appProps.get(TestProperties.KEYS.DB_HOST) + ":" +
  54. appProps.get(TestProperties.KEYS.DB_PORT) + "/"
  55. + appProps.get(TestProperties.KEYS.DB_NAME);
  56. logger.info("JDBC_URL: {}. DB_USER: {}", jdbcUrl, appProps.get(TestProperties.KEYS.DB_USER));
  57. cpds.setJdbcUrl(jdbcUrl);
  58.  
  59. if (appProps.get(TestProperties.KEYS.DB_USER) != null) {
  60. cpds.setUser(appProps.get(TestProperties.KEYS.DB_USER));
  61. }
  62. String passwd = appProps.get(TestProperties.KEYS.DB_PASSWORD);
  63. if (passwd != null && !passwd.trim().equals("")) {
  64. cpds.setPassword(passwd);
  65. }
  66.  
  67. TransactionFactory transactionFactory = new JdbcTransactionFactory();
  68. Environment environment = new Environment("development", transactionFactory, cpds);
  69.  
  70. Configuration configuration = new Configuration(environment);
  71. //mapperPackagesUtil.addMappersToConfiguration(configuration);
  72. configuration.addMappers(DireccionPrestadoraMapper.class.getPackage().getName());
  73. factory = new SqlSessionFactoryBuilder().build(configuration);
  74. logger.info("Pool de conexiones a Atlas inicializado");
  75.  
  76. }
  77.  
  78. @Override
  79. public SqlSession getSqlSession() {
  80. return factory.openSession();
  81. }
  82.  
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement