sql >> データベース >  >> RDS >> Mysql

エラー:HHH000299:スキーマの更新を完了できませんでしたjava.lang.NullPointerException

    Hibernate方言とデータベースを誤って混合しているようです。元の問題では、MySQLデータベースとorg.hibernate.dialect.HSQLDialectの方言があります (以下の最初のコードブロックを参照してください。)

    ソリューションには、MySQLデータベースとorg.hibernate.dialect.MySQL5Dialectの正しい方言があります。 (以下の2番目のコードブロックを参照してください。)

    databasePlatformを変更した場合 オリジナルではMySQL方言であるため、同様に機能します。

    オリジナル:

    <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
      ...
      <property name="jpaVendorAdapter">
        <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
          ...
          <property name="databasePlatform" value="org.hibernate.dialect.HSQLDialect"/>
        </bean>
      </property>
      ...
    </bean>
    

    作業中:

    <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
      <persistence-unit name="WebAppPU" transaction-type="RESOURCE_LOCAL">
        ...
        <properties>
          ...
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>      
          ...
        </properties>
      </persistence-unit>
    </persistence>
    


    1. エラー2006(HY000):MySQLサーバーがなくなりました

    2. MySQL COUNT()およびnull

    3. データベースホスティングコストの削減:DigitalOcean vs. AWS vs. Azure

    4. MySQL/MariaDBサーバーにアクセスするための上位5つのソフトウェアアプリケーション