Дерби работает только с использованием встроенного драйвера

Я пытаюсь подключиться к запущенной базе данных Derby из приложения весенней загрузки, но каждый раз, когда я запускаю свое приложение, я вижу, что встроенная база данных запускается вместо подключения к существующей. Я уверен, что моя база данных Derby работает с java -jar $DERBY_HOME/lib/derbyrun.jar server start выполняется без ошибок, и я могу подключиться от терминала к базе данных (используя ij> connect 'jdbc:derby://localhost:1527/wrtschatz-db;').

Я автопроводка jdbcTemplate

@Component
public class LessonItemsRetriever {

    @Autowired
    JdbcTemplate jdbcTemplate;

    // methods doing jdbcTemplate.query(...) 
} 

И я ожидаю, что это создаст источник данных из моего application.yml

spring.datasource:
    url: jdbc:derby://localhost:1527/wortschatz-db
    username: ""
    password: ""
    driverClassName: org.apache.derby.jdbc.ClientDriver

Но на самом деле это логирование 2017-05-14 11:10:36.698 INFO 6418 --- [ main] o.s.j.d.e.EmbeddedDatabaseFactory : Starting embedded database: url='jdbc:derby:memory:testdb;create=true', username='sa' что, конечно, приводит Schema 'SA' does not exist; nested exception is java.sql.SQLSyntaxErrorException: Schema 'SA' does not exist когда я пытаюсь выполнить свои запросы.

Чего мне не хватает в моей конфигурации?

1 ответ

Решение

Хорошо, я вернулся к своему проекту, и я могу сказать, что он использовал неправильную зависимость. Я использовал встроенный дерби, пока мне нужен клиент для подключения к внешней базе дерби. В моем build.gradle правильная зависимость:

compile("org.apache.derby:derbyclient:10.13.1.1")
Другие вопросы по тегам