public class ConfigDB {
@Bean
@Primary
@ConfigurationProperties("spring.pg.datasource")
public DataSourceProperties firstDataSourceProperties() {
return new DataSourceProperties();
}
@Bean
@ConfigurationProperties("spring.ch.datasource")
public DataSourceProperties secondDataSourceProperties() {
return new DataSourceProperties();
}
@Bean(name = "PG")
@Primary
@ConfigurationProperties("spring.pg.datasource.configuration")
public DataSource firstDataSource() {
return firstDataSourceProperties()
.initializeDataSourceBuilder()
.type(HikariDataSource.class)
.build();
}
@Bean(name = "CH")
@ConfigurationProperties("spring.ch.datasource.hikari")
public DataSource secondDataSource() {
return secondDataSourceProperties()
.initializeDataSourceBuilder()
.type(HikariDataSource.class)
.build();
}
spring.pg.datasource.url=***
spring.pg.datasource.username=***
spring.pg.datasource.password=***
spring.ch.datasource.url=jdbc:clickhouse:/**
spring.ch.datasource.driverClassName=com.github.housepower.jdbc.ClickHouseDriver**
spring.ch.datasource.hikari.connectionTimeout=30000
spring.ch.datasource.hikari.idleTimeout=600000
spring.ch.datasource.hikari.maxLifetime=18000
spring.ch.datasource.hikari.connection-test-query=SELECT 1
spring.ch.datasource.hikari.initialization-fail-timeout=30000
spring.ch.datasource.hikari.login-timeout=30000
2019-07-22 11:50:51.886 WARN 7568 --- [nio-8080-exec-1] com.zaxxer.hikari.HikariConfig : HikariPool-2 - maxLifetime is less than 30000ms, setting to default 1800000ms.
2019-07-22 11:50:51.886 INFO 7568 --- [nio-8080-exec-1] com.zaxxer.hikari.HikariDataSource : HikariPool-2 - Starting...
2019-07-22 11:50:51.918 INFO 7568 --- [nio-8080-exec-1] com.zaxxer.hikari.HikariDataSource : HikariPool-2 - Start completed.
2019-07-22 11:50:52.596 WARN 7568 --- [nio-8080-exec-1] o.s.jdbc.support.SQLErrorCodesFactory : Error while extracting database name - falling back to empty error codes
@Service
public class ClickHouseService {
private ClickHouseDAO clickHouseDAO;
@Autowired
public ClickHouseService(ClickHouseDAO clickHouseDAO) {
this.clickHouseDAO = clickHouseDAO;
}
public List<ru.concerteza.sla.ch.model.DataRecord> giveall() {
String query = "SELECT * FROM sla.Tests";
List<ru.concerteza.sla.ch.model.DataRecord> dbquery;
return clickHouseDAO.query(query);
}
}
@Service
public class ClickHouseDAO {
private JdbcTemplate ch;
@Autowired
@Qualifier("CH")
public void ClickHouseDAO1(DataSource dataSource) {
this.ch = new JdbcTemplate(dataSource);
}
public List<DataRecord> query(String query) {
List<DataRecord> answer = ch.query(query, DataRecord.Mapper.INSTANCE);
return answer;
}
}
{ "OperatotIds" : [3] }
@JsonAutoDetect
public class CreateTask implements Serializable {
@JsonProperty(" OperatorIds")
private List<Long>OperatorIds;
public CreateTask() {
}
public List<Long> getOperatorIds() {
return OperatorIds;
}
public void setOperatorIds(List<Long> OperatorIds) {
thisOperatorIds = OperatorIds;
}
}
1) для работы с геометрией нам необходимо специальное расширение базы данных данных.
Это расширение содержит в себе методы для работы с геометрией?
2) К базе данных нам необходимо добавить еще одну базу данных, которая содержит координаты области(пусть будет планеты)
3) В случае если у меня просто числовые колонки широты и долготы , то мне необходимо их конвертировать в специальную яйчейку, которую назовем гео. А если у меня нет специального поля гео в базе данных, то мне нужно как то посчитать в нужный формат эти два столбца ?