クラスパスリソースで定義された 'entityManagerFactory'という名前のBeanの作成エラー:initメソッドの呼び出しに失敗しました


115

Springプロジェクトをコンパイルすると、次のエラーが発生しました。

クラスパスリソース[org / springframework / boot / autoconfigure / orm / jpa / HibernateJpaAutoConfiguration.class]で定義された「entityManagerFactory」という名前のBeanの作成エラー:initメソッドの呼び出しに失敗しました

STS EclipseとMySqlデータベースを使用しています

私の接続文字列Application.Properties

spring.datasource.url=jdbc:mysql://localhost:3306/stgdb
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update

詳細なエラーは以下のとおりです

=================================================

2016-10-15 15:34:38.875[0;39m [31mERROR[0;39m [35m3700[0;39m [2m---[0;39m [2m[           main][0;39m [36mo.s.boot.SpringApplication              [0;39m [2m:[0;39m Application startup failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1583) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1076) ~[spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:851) ~[spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541) ~[spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:371) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at com.s2g.testrestapplication.TestRestApplication.main(TestRestApplication.java:10) [classes/:na]
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.persistenceException(EntityManagerFactoryBuilderImpl.java:954) ~[hibernate-entitymanager-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:882) ~[hibernate-entitymanager-5.0.11.Final.jar:5.0.11.Final]
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:60) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:353) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:373) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:362) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1642) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1579) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    ... 16 common frames omitted
Caused by: org.hibernate.exception.GenericJDBCException: Unable to obtain JDBC Connection
    at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:47) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:109) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:95) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.ExtractionContextImpl.getJdbcConnection(ExtractionContextImpl.java:65) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.ExtractionContextImpl.getJdbcDatabaseMetaData(ExtractionContextImpl.java:75) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.InformationExtractorJdbcDatabaseMetaDataImpl.locateTableInNamespace(InformationExtractorJdbcDatabaseMetaDataImpl.java:339) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.InformationExtractorJdbcDatabaseMetaDataImpl.getTable(InformationExtractorJdbcDatabaseMetaDataImpl.java:241) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.DatabaseInformationImpl.getTableInformation(DatabaseInformationImpl.java:105) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigrationToTargets(SchemaMigratorImpl.java:162) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigration(SchemaMigratorImpl.java:60) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:134) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:101) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:472) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:444) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:879) ~[hibernate-entitymanager-5.0.11.Final.jar:5.0.11.Final]
    ... 22 common frames omitted
Caused by: com.atomikos.jdbc.AtomikosSQLException: Connection pool exhausted - try increasing 'maxPoolSize' and/or 'borrowConnectionTimeout' on the DataSourceBean.
    at com.atomikos.jdbc.AtomikosSQLException.throwAtomikosSQLException(AtomikosSQLException.java:46) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.throwAtomikosSQLException(AbstractDataSourceBean.java:90) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.throwAtomikosSQLException(AbstractDataSourceBean.java:85) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.getConnection(AbstractDataSourceBean.java:347) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.getConnection(AbstractDataSourceBean.java:394) ~[transactions-jdbc-3.9.3.jar:na]
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:180) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.ExtractionContextImpl.getJdbcConnection(ExtractionContextImpl.java:62) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    ... 33 common frames omitted
==============================
Pom.xml file
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.s2g.testrestapplication</groupId>
    <artifactId>testrestapplication</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>TestRestApplication</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.1.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.2.2</version>
        </dependency>

        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.2.2</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.opensaml</groupId>
            <artifactId>opensaml-saml-api</artifactId>
            <version>3.1.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.0</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jersey</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jta-atomikos</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

3
明らかに、取得した「エラー」は実際には「原因:com.atomikos.jdbc.AtomikosSQLException:接続プールが使い果たされています-DataSourceBeanで「maxPoolSize」または「borrowConnectionTimeout」を増やしてみてください。
Neil Stockton

回答:


78

まず、次の依存関係を追加します。

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>4.1.4.Final</version>
</dependency>

そして

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>5.2.3.Final</version>
</dependency>

更新 または単に次の依存関係を追加します。

<dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
</dependency>

33
@ georges-van同じエラーが発生しましたが、あなたが言及した2つの依存関係はすでに存在しておりspring-boot-starter-data-jpa、次のエラーが発生します。anotepad.com/notes/wpjr5g

@georgesvan春のブーツからインポートした上記のjarファイルがすでにあります。あなたが考えるものは、このまったく同じエラーの理由である可能性があります。hibernateに関連する依存関係を追加すると、まったく同じ問題が発生します。javax.persistenceパッケージのJavaファイルを使用するとすべてが問題ありませんが、org.hibernateパッケージのJavaファイルを使用すると、まったく同じエラーがポップアップ表示されます。
user641887 2017年

1
投稿で言及されているのと同じバージョンを使用してください。
Shahab A

4
@ georges、thevikasdubeはすでにHibernateを含むspring-boot-starter-data-jpa依存関係を使用しています。彼が休止状態の依存関係を明示的に含める必要がある理由は何ですか?
Mav55

6
FYI hibernate-entitymanagerは非推奨になりました。hibernate-core代わりに(のみ)を使用してください。
ボヘミアン

73

Java 9を使用している人々はこの依存関係を含みます:-

<dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
</dependency>

4
Java 8以降のバージョンでこの明示的なインクルードが必要な理由に興味がある人のために、ここに興味深い記事があります。baeldung.com/java-9-jaxbexception、基本的にはモジュラーシステムのJava 9の導入に関連し、必須ではないすべてのライブラリをスリム化する試み
Opentuned

どうやら彼は少し多すぎる人がこのエラーを起こし始めたときにこの記事を追加しました...しかし、クールな記事
Rahul Jangra

私はJava 8を使用していますが、これでうまくいきました。
アフメセチン

これはgradleにとって何でしょうか?
FlexEast 2018年

18

依存関係を追加しても問題は解決しませんでした。

「@Entity」クラスの一部であり、データベースに存在しない「追加」フィールドが原因で、この問題は私の最後で発生していました。

@Entityクラスから追加のフィールドを削除しましたが、機能しました。

幸運を。


1
追加のフィールドとはどういう意味ですか?これについて詳しく教えてください。私は今同じ問題を抱えています
Bandham Manikanta

データベースに存在しない、private / public integers..etcなどの追加のプロパティを意味しました
JAD

働いた!私のEntityクラスには2つのコンストラクター(arg、no-arg)がありましたが、それらを削除して機能しました。@JADに感謝します。幸せなコーディング。
Bandham Manikanta

はい、この問題は、任意のエンティティークラスの問題に関連している可能性があります。
眠り

働きました!エラーは、依存関係またはエンティティマネージャーの構成の問題ではありませんでした。問題は私のエンティティクラスの1つでした。永続性マネージャーの助けを借りてエンティティークラスを作成した後、問題は解決されました。ありがとう。
Peter

9

私も同じ問題に直面しました。私はJava9を使用していて、pomファイルで次の依存関係を使用していました:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

以下の依存関係をpomに追加した後、問題は解決しました:

    <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
    </dependency>

8
これはRahul Jangraの回答の複製です:stackoverflow.com/a/49707331/636009
David Conrad

7

私は、jarファイルがファイルのことを疑うhibernate-corehibernate-entitymanager依存関係のが破損しているか、マシンに正しくインストールされていなかったれます。

という名前のフォルダを削除することをお勧めしますhibernate-corehibernate-entitymanager、あなたのMavenのローカルリポジトリからとMavenはそれらを再インストールします。

Mavenローカルリポジトリのデフォルトの場所はC:\Documents and Settings\[USERNAME]\.m2、Windowsまたは~/.m2Linux / Macです。


それは私のために働いた、私は春のブートバージョンを1.5から2.3に更新し、このエラーが発生しました。
Ali786 2018

リポジトリ全体を削除しましたが、動作します。春のブーツでこれと他の多くのエラーを解決しました
Eduardo Pascual Aseff

5

私の場合、以下の注釈のいずれかを削除すると、たとえば「entityManagerFactory」というエラーメッセージが表示されます。

 @Id
  @GeneratedValue(strategy=GenerationType.AUTO)

または

@ManyToMany(targetEntity=listOfObject_x.class)

不足しているアノテーションを追加すると、エラーメッセージが消えます。

package mypackage_unameit;
import javax.persistence.PrePersist;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

import lombok.Data;

@Data
@Entity
public class Someclasss {

  @Id
  @GeneratedValue(strategy=GenerationType.AUTO)
  private Long id;

  @NotNull
  @Size(min=5, message="Name must be at least 5 characters long")
  private String name;

  private Date createdAt;

  @ManyToMany(targetEntity=listOfObject_x.class)
  @Size(min=1, message="You must choose at least 1 ingredient")
  private List<listOfObject_x>   = new ArrayList<>();

  @PrePersist
  void createdAt() {
    this.createdAt = new Date();
  }
}

5

私はjdk-12.0.2.jdkを持っています、問題の解決策を見つけました、pom.xmlに依存関係を追加します:

<!-- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api -->
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
<dependency>
    <groupId>org.javassist</groupId>
    <artifactId>javassist</artifactId>
    <version>3.25.0-GA</version>
</dependency>

1
ありがとう、私もJDK 12を使用していますが、これが私のために機能する唯一のものです。
AnT

これらの依存関係を追加することで一部の人のエラーが解決された理由を誰かが説明できますか?
キーグ

4

Mavenの代わりにGradleを使用する場合は、ビルドファイルの依存関係にこれを追加します。

compile('javax.xml.bind:jaxb-api:2.3.0')

3

私はSpringの依存関係のバージョンを2.0.4から2.1.6に更新することで私の問題を解決しました

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.4.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
</parent>

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
</parent>

上記のすべての解決策を試しましたが、これだけがうまくいきます!私の日を保存してください!!!
Harriet.O

2

私の場合、それはIntellij IDEAがデフォルトでJava 11をデフォルトのプロジェクトSDKとして設定したことが原因でしたが、プロジェクトはJava 8で実装されました。


これも私の問題でした。新しくダウンロードしたIntellijIDEAでJava8を使用する古いプロジェクトを開こうとすると、これが解決策です。
fakturk

macOSにJava8をインストールする場合-醸造樽を導入するapplyopenjdk / openjdk / adoptopenjdk8
fakturk

2

JPAを使用せず、代わりにentityManagerFactoryを除外し、Spring Data JDBCまたはSpring JDBCを使用することを好むユーザーは、Beanを除外して例外を回避できます。

@SpringBootApplication(exclude = {HibernateJpaAutoConfiguration.class})

1

最大プールサイズの値を1から2に変更することで問題を解決できました

spring.datasource.hikari.maximum-pool-size = 2


1

@EnableTransactionManagementでクラスに注釈を付けてみてください。私は同じ問題に直面していましたが、これを追加することで解決しました。

@EnableTransactionManagement
public class ConfigurationBean {
}

1

この問題を解決するには、モデルにSerializableを追加します。

@Entity
@Table(name="Model_Rest")
@IdClass(Model_Rest.class)
public class Model_Rest implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    /**
     * 
     */
    //@GeneratedValue(strategy = GenerationType.AUTO)
    //@Column(columnDefinition="id")

    @Id
    private String login;
    @Id
    private String password;




    @Autowired
    public String getLogin() {
        return login;
    }

    @Autowired
    public void setLogin(String login) {
        this.login = login;
    }

    @Autowired
    public String getPassword() {
        return password;
    }

    @Autowired
    public void setPassword(String password) {
        this.password = password;
    }

    public Model_Rest() {
        // TODO Auto-generated constructor stub
    }

    public Model_Rest(String login, String password) {
        this.login = login;
        this.password = password;
    }

    @Override
    public String toString() {
        return "Model_Rest [login=" + login + ", password=" + password + "]";
    }
  }

1

このエラーは、たとえば、間違ったデータベース名を指定したときに「spring.datasource.url」にエラーがあるという事実に関連している可能性もあります。


0

@Idを使用してください.Worked for me。それ以外の場合は、エラーがスローされます。エンティティクラスまたはリポジトリに不足しているものがあるかどうかに依存します


0

JDK 1.8.0_201以降を使用している場合は、古いJDKで試してください。

JDK1.8.0_201でも同じ問題がありますが、コードを変更しなくてもJDK1.8.0_101で動作します。


0

私にとって、それは別のエラーの結果でした

org.postgresql.util.PSQLException:FATAL:ユーザーのパスワード認証に失敗しました

つまり、認証資格情報を確認するだけです


0

この依存関係を追加した後、私のエラーは解決しました。

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator -->
    <dependency>
        <groupId>org.hibernate.validator</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>6.0.16.Final</version>
    </dependency>

0

春のバージョンを変更してみてください。私は同じ問題を抱えていて、それは私のために働きました


0

私のEclipse Lunaでも同じ問題がありました。私はJDK12とJava 1.8を使用していることがわかりました。JDKをJDK8に変更し、問題は解決しました。EclipseでJDKを確認する場合は、

Window-> Preferences-> Java- >Installed JREs 

そして、それらがプロジェクトと互換性があるかどうかを確認します。幸運を!


0

私にとっては、application.properties上のデータベースの名前でした。正しい名前を入力すると、問題なく動作しました。



0

まだ同じ問題を抱えている人。application.propertiesに次の行を追加してください

# The SQL dialect makes Hibernate generate better SQL for the chosen database
## I am using Mysql8 so I have declared MySQL8Dialect if you have other versions just add ## that version number
spring.jpa.properties.hibernate.dialect =  org.hibernate.dialect.MySQL8Dialect

-1

私は同様のエラーを経験しました。エラーは以前には発生していませんでしたが、最近になってoracle dbを再インストールし、インスタンス名を「xe」から「orcl」に変更しましたが、プロパティファイル内の次のコードを変更するのを忘れています。

spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:***xe***
spring.datasource.username=system
spring.datasource.password=manager

「xe」から「orcl」に変更すると、すべて問題なく動作します。


-1

問題は、パッケージの競合が原因である可能性があります。@Idエンティティでアノテーションを使用する場合@Id、Springフレームワークを使用する場合があります。ただし、使用する必要があります@Id永続化APIのアノテーションをます。

したがって@javax.persistence.Id、エンティティでアノテーションを使用します。


クラスにアクセスすると、インポートを介してパッケージ参照を持つ特定のクラスを参照します。そうした場合、それはコンパイル時エラーであり、最初のプロセスでキャッチされます。そのため、JPAやSpringで@Idと競合する可能性はありません。
イマームBUX

これがどのような質問に答えようとしているのかはわかりませんが、この質問ではありません。@Idで注釈を付けても付けなくても、「接続プールが使い果たさ
Mark Rotteveel、2018

-2

次の依存関係を追加してみてください。

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
   <groupId>com.h2database</groupId>
   <artifactId>h2</artifactId>
</dependency> 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.