У меня проблема в моем проекте, где в моей базе данных всегда открыто 10 соединений.Я использую Spring Boot Application (REST API), который работает на Elastic Beanstalk.
10 подключений появляются сразу после запуска приложения, без запроса к базе данных.На данный момент у меня есть 4 класса репозиториев, которые выглядят так:
@Repository
@Transactional()
public class FieldJpaRepository {
private Logger logger = LoggerFactory.getLogger(this.getClass());
@PersistenceContext
EntityManager entityManager;
public List<Field> findAll(){ //JPQL
TypedQuery<Field> namedQuery = entityManager.createNamedQuery("find_all_fields", Field.class);
return namedQuery.getResultList();
}
public Field findById(int id){
return entityManager.find(Field.class,id);
}
public List<Field> findAreaFields(float minLat, float maxLat, float minLng, float maxLng){
return entityManager.createQuery("FROM Field f WHERE f.lat BETWEEN :minLat AND :maxLat AND f.lng BETWEEN :minLng AND :maxLng ", Field.class)
.setParameter("minLat", minLat)
.setParameter("maxLat", maxLat)
.setParameter("minLng", minLng)
.setParameter("maxLng", maxLng)
.getResultList();
}
public Field updateOrInsertField(Field field){
return entityManager.merge(field);
}
public void deleteField(int id){
Field findField = findById(id);
entityManager.remove(entityManager.contains(findField) ? findField : entityManager.merge(findField));
}
}
Мой файл application.properties выглядит следующим образом:
spring.jpa.show-sql=true
spring.datasource.url=********
spring.datasource.username=******
spring.datasource.password=******
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.ddl-auto=create
Могу ли я сделать что-то не так?Я пропустил какой-либо параметр конфигурации?
Заранее спасибо.