1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.catalog.jpa.config;
18
19 import javax.sql.DataSource;
20
21 import com.mchange.v2.c3p0.DriverManagerDataSource;
22 import org.apache.logging.log4j.LogManager;
23 import org.apache.logging.log4j.Logger;
24 import org.apache.logging.log4j.catalog.api.annotation.JdbcUrl;
25 import org.springframework.beans.factory.annotation.Value;
26 import org.springframework.context.annotation.Bean;
27 import org.springframework.context.annotation.Configuration;
28
29
30
31
32 @Configuration
33 @JdbcUrl("postgresql")
34 public class PostgresqlDataSourceConfig implements DataSourceConfig {
35
36 private static final Logger LOGGER = LogManager.getLogger(PostgresqlDataSourceConfig.class);
37
38 @Value("${jdbcUrl}")
39 private String url;
40
41 @Value("${dbUserName}")
42 private String userName;
43
44 @Value("${dbPassword}")
45 private String password;
46
47 @Bean
48 public DataSource dataSource() {
49 LOGGER.debug("Creating PostgresQL data source for {}", url);
50 DriverManagerDataSource driver = new DriverManagerDataSource();
51 driver.setDriverClass("org.postgresql.Driver");
52 driver.setJdbcUrl(url);
53 driver.setUser(userName);
54 driver.setPassword(password);
55 return driver;
56 }
57 }