我从一个由DBA制作的现有表中生成了实体类。表中的列不是按字母顺序排列的。当我启动应用程序时,出现以下错误消息
--错误消息--
执行DDL表名时出错
数据库中已有一个名为table name的对象
--应用程序.属性--
spring.jpa.hibernate.ddl-auto=none spring.jpa.generate-ddl=false
是否可以从现有的表中创建实体类,其中的列不是按字母顺序创建的?即使我设置了ddl-auto=none,我的应用程序也会尝试创建新的表?
null
--http://maven.apache.org/xsd/maven-4.0.0.xsd“>4.0.0
<groupId>com.example</groupId>
<artifactId>webservice</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>webservice</name>
<description>webservice Java-SpringBoot version</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.0.M2</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>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>nz.net.ultraq.thymeleaf</groupId>
<artifactId>thymeleaf-layout-dialect</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter-test</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!-- <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency> -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc42</artifactId>
<version>4.2</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.querydsl</groupId>
<artifactId>querydsl-jpa</artifactId>
</dependency>
<dependency>
<groupId>com.querydsl</groupId>
<artifactId>querydsl-apt</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
<version>2.2.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<!-- ADDED FOR Querydsl -->
<plugin>
<groupId>com.mysema.maven</groupId>
<artifactId>apt-maven-plugin</artifactId>
<version>1.1.3</version>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<outputDirectory>target/generated-sources/java</outputDirectory>
<processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
spring.jpa.database=SQL-Server
spring.jpa.hibernate.ddl-auto=none spring.jpa.generate-ddl=false
spring.jpa.show-sql=true
向你问好,JH
只要有spring.jpa.hibernate.ddl-auto=none
就可以工作,它不会创建表,因为它可以有create、update、none等值,none表示什么也不做auto update/create/drop
如果你没有按字母顺序,只要它与你的实体相匹配,那也是可以的。
更新
步骤1:如果不使用多个数据源,请删除mysql连接器
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
步骤2:添加以下属性以与MS SQL连接。(替换数据库、用户、通过、端口)
spring.datasource.url=jdbc:sqlserver://localhost;databaseName=springbootdb
spring.datasource.username=sa
spring.datasource.password=Projects@123
spring.datasource.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.jpa.show-sql=true
spring.jpa.hibernate.dialect=org.hibernate.dialect.SQLServer2012Dialect
spring.jpa.hibernate.ddl-auto = none
这是控制台:我搜索了overstack,但我只是添加了spring-boot-starter-data-jpa。 在此输入图像说明**
我想把liquibase介绍到我的项目中,首先,我想根据我的hibernate实体生成一个changelog文件。 感谢你的帮助.
我想为我的项目添加Liquibase DB迁移支持。它也使用Spring靴。现在,我想通过使用Hibernate和JPA实体类,在没有DB连接的情况下生成changelog。但它抛出了一个错误: 我没有持久单元XML文件,因为这都是由Spring Boot在运行时完成的。该项目是一个多模块项目。Liquibase插件配置在父POM中。实体在子模块中。 这是Liquibase的Maven插件配置:
问题内容: 本着与CriteriaQuery关联的类型安全的精神,JPA 2.0还具有一个API,用于支持实体的元模型表示。 是否有人知道此API的完整功能实现(生成元模型,而不是手动创建元模型类)?如果有人也知道在Eclipse中进行设置的步骤,那将是非常棒的(我认为它与设置注释处理器一样简单,但您永远不会知道)。 编辑:偶然发现了HibernateJPA2元模型生成器。但是问题仍然存在,因为我
问题内容: 我正在尝试从现有的空数据库中生成symfony2中的实体(相当大,从头开始创建实体确实很痛苦)。不幸的是,我遇到了很大的问题。 当我尝试调用以下命令时(在Windows上如果发生任何更改): 我收到以下消息: 没有要处理的元数据类。 发布之前,我已经: 验证我的配置正常(我可以连接到数据库), 我的捆绑软件已创建,上面指定的路径有效 当我尝试转换为xml / yml时,与尝试生成注释映
有人吗?还是有其他选择?我在用NetBeans。