Подключение к MS SQL Server 2005 через Hibernate - PullRequest
1 голос
/ 05 июня 2010

У меня JRE 1.6, и я использую следующий файл hibernate.cfg.xml. Я всегда получаю «Не удается открыть соединение» и «Номер порта 1433 / DB недействителен».

<hibernate-configuration>
  <session-factory>
    <property name="hibernate.connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
    <property name="hibernate.connection.url">jdbc:sqlserver://IP/DB</property>
    <property name="hibernate.connection.username"></property>
    <property name="hibernate.connection.password"></property>
    <property name="hibernate.connection.pool_size">10</property>
    <property name="show_sql">true</property>
    <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
    <property name="hibernate.hbm2ddl.auto">update</property>
  </session-factory>
</hibernate-configuration>

Ответы [ 2 ]

1 голос
/ 05 июня 2010

Из официальной документации:

Создание URL соединения

Общая форма URL соединения:

jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]

где:

  • jdbc:sqlserver:// (Обязательный) известен как суб-протокол и является постоянным.
  • serverName (Необязательно) - адрес сервера для подключения. Это может быть DNS или IP-адрес, или это может быть localhost или 127.0.0.1 для локального компьютера. Если не указан в URL-адресе соединения, имя сервера должно быть указано в коллекции свойств.
  • instanceName (Необязательно) - это экземпляр для подключения к serverName. Если не указан, устанавливается соединение с экземпляром по умолчанию.
  • portNumber (Необязательно) - это порт для подключения к serverName. Значение по умолчанию - 1433. Если вы используете значение по умолчанию, вам не нужно указывать порт или предшествующее ему «:» в URL.
  • property (Необязательно) - это одно или несколько опций подключения свойств. Для получения дополнительной информации см. Настройка свойств соединения . Любое свойство из списка может быть указано. Свойства могут быть разделены только точкой с запятой (';'), и их нельзя дублировать.

Так что используйте вместо этого:

jdbc:sqlserver://IP;databaseName=DB
0 голосов
/ 29 июня 2010

Вы подключаетесь к хосту / экземпляру. Это должен быть обратный слеш: хост \ экземпляр. Вы смешиваете понятия экземпляра и баз данных?

хоста \ экземпляр; Databasename = DB

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...