java كيفية تكوين ملف التكوين السبات لملقم SQL




sql-server hibernate (4)

لا تنس تمكين اتصالات tcp / ip في أدوات تكوين SQL SERVER

هنا هو ملف التكوين ل MySQL:

<hibernate-configuration>
  <session-factory>
    <property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driver</property>
    <property name="hibernate.connection.url">jdbc:mysql://localhost/test</property>
    <property name="hibernate.connection.username">root</property>
    <property name="hibernate.connection.password">zgy01</property>
    <property name="hibernate.connection.pool_size">100</property>
    <property name="show_sql">false</property>
    <property name="dialect">org.hibernate.dialect.MySQLDialect</property>

    <!-- Mapping files -->
    <mapping resource="model.hbm.xml"/>

  </session-factory>
</hibernate-configuration>

ما الذي يجب تحديده ل SQL Server 2005؟ أنا فعلت هذا مثل:

<hibernate-configuration>
  <session-factory>
    <property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driver</property>
    <property name="hibernate.connection.url">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
    <property name="hibernate.connection.username">sa</property>
    <property name="hibernate.connection.password">lal</property>
    <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>

    <property name="hibernate.connection.pool_size">100</property>        
    <property name="show_sql">false</property>

    <!-- Mapping files -->
    <mapping resource="model.hbm.xml"/>

  </session-factory>
</hibernate-configuration>

سؤالي بشكل أكثر دقة هو كيفية تحديد قاعدة البيانات التي يجب أن أقوم بالاتصال بها؟

في MySQL اعتدت أن أفعل مثل هذا:

<property name="hibernate.connection.url">jdbc:mysql://localhost/test</property> 

الخصائص التي هي قاعدة بيانات محددة هي:

  • hibernate.connection.driver_class : فئة مشغل JDBC
  • hibernate.connection.url : JDBC URL
  • hibernate.connection.username : مستخدم قاعدة البيانات
  • hibernate.connection.password : كلمة مرور قاعدة البيانات
  • hibernate.dialect : اسم الفئة الخاص بـ Hibernate org.hibernate.dialect.Dialect والذي يتيح وضع Hibernate لإنشاء SQL محسّن لقاعدة بيانات علائقية معينة.

لتغيير قاعدة البيانات ، يجب عليك:

  1. توفير برنامج تشغيل JDBC مناسب لقاعدة البيانات على مسار الفئة ،
  2. تغيير خصائص JDBC ( برنامج التشغيل ، عنوان url ، المستخدم ، كلمة المرور )
  3. تغيير " Dialect المستخدمة من قبل Hibernate للتحدث إلى قاعدة البيانات

هناك اثنين من برامج التشغيل للاتصال بـ SQL Server؛ المصدر المفتوح jTDS و Microsoft واحد. تعتمد فئة برنامج التشغيل وعنوان URL الخاص بـ JDBC على أي منهما تستخدمه.

مع سائق jTDS

اسم فئة السائق هو net.sourceforge.jtds.jdbc.Driver .

تنسيق عنوان URL لـ sqlserver هو:

 jdbc:jtds:sqlserver://<server>[:<port>][/<database>][;<property>=<value>[;...]]

لذا سيبدو تكوين Hibernate (لاحظ أنه يمكنك تخطي بادئة hibernate. في الخصائص):

<hibernate-configuration>
  <session-factory>
    <property name="connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
    <property name="connection.url">jdbc:jtds:sqlserver://<server>[:<port>][/<database>]</property>
    <property name="connection.username">sa</property>
    <property name="connection.password">lal</property>

    <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>

    ...
  </session-factory>
</hibernate-configuration>

مع Microsoft SQL Server JDBC 3.0:

اسم فئة برنامج التشغيل هو com.microsoft.sqlserver.jdbc.SQLServerDriver .

تنسيق عنوان URL هو:

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

لذا فإن شكل السبات سيبدو كما يلي:

<hibernate-configuration>
  <session-factory>
    <property name="connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
    <property name="connection.url">jdbc:sqlserver://[serverName[\instanceName][:portNumber]];databaseName=<databaseName></property>
    <property name="connection.username">sa</property>
    <property name="connection.password">lal</property>

    <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>

    ...
  </session-factory>
</hibernate-configuration>

المراجع


نحتاج أيضًا إلى ذكر المخطط الافتراضي لـ SQSERVER: dbo

<property name="hibernate.default_schema">dbo</property>

اختبارها مع السبات 4


يجب أن يكون عنوان URL للاتصال مثل هذا لـ SQL Server:

jdbc:sqlserver://serverName[\instanceName][:port][;databaseName=your_db_name]

أمثلة:

jdbc:sqlserver://localhost
jdbc:sqlserver://127.0.0.1\INGESQL:1433;databaseName=datatest
...




hibernate.cfg.xml