Немного запутано, ссылаются ли 'driverclassname' и 'hibernate.dialect' на драйвер mysql?
Нет, это не так.driverclassname
ссылается, ну, в общем, на имя класса драйвера , которое является классом из данного драйвера JDBC, который реализует java.sql.Driver
.Имя класса драйвера зависит от драйвера.
При использовании драйвера JDBC MySQL, также называемого MySQL Connector / J, этот класс com.mysql.jdbc.Driver
, как объяснено в документации MySQL Connector / J:
Имя класса, который реализует java.sql.Driver
в MySQL, Connector / J, составляет com.mysql.jdbc.Driver
.(...)
И на самом деле, они даже предоставляют инструкции по использованию драйвера с Spring .См. Раздел 20.3.5.2.4.Использование Connector / J с Spring .
hibernate.dialect
отличается, это свойство конфигурации используется для определения имени класса Hibernate org.hibernate.dialect.Dialect
, который позволяет Hibernate генерировать SQL, оптимизированный дляконкретная реляционная база данных .И снова это объясняется в документации Hibernate:
(...) Имя класса Hibernate org.hibernate.dialect.Dialect
, которое позволяет Hibernate генерировать SQL, оптимизированный для конкретной реляционной базы данных.
например full.classname.of.Dialect
В большинстве случаев Hibernate действительно сможет выбрать правильную реализацию org.hibernate.dialect.Dialect
на основе метаданных JDBC, возвращаемых драйвером JDBC.
Для MySQL 5.х, вы должны использовать org.hibernate.dialect.MySQL5InnoDBDialect
, если вы используете таблицы InnoDB (это будет моя рекомендация) или org.hibernate.dialect.MySQL5Dialect
, если вы не используете.См. Раздел 3.4.1.Диалекты SQL для (не исчерпывающего) списка.
Последний момент, часть Maven, которую вы даже не упомянули в своем вопросе ... Драйвер JDBC MySQL доступен в центральном репозитории Maven иВы должны использовать поисковую систему хранилища (как я уже предлагал ).Например, следующий запрос:
http://www.jarvana.com/jarvana/search?search_type=project&project=mysql
позволяет найти maven координаты конечной версии в два клика:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.13</version>
</dependency>
PS: я неЯ хочу помочь, но вы должны постараться использовать документацию по продуктам или платформам, которые вы используете.То, что вы спрашиваете в этом вопросе, хорошо документировано (как я показал) и может быть легко найдено.По моему мнению, научиться самостоятельно находить основную информацию - это фундаментальный навык для разработчика программного обеспечения.