用测试数据加载Spring启动数据库

用测试数据加载Spring启动数据库,spring,hibernate,jpa,spring-boot,h2,Spring,Hibernate,Jpa,Spring Boot,H2,目标:利用spring启动功能创建一个简单的数据库并加载数据 问题:在spring引导启动期间接收到错误 org.hibernate.tool.hbm2ddl.SchemaExport : Column "FIRSTNAME" not found; SQL statement 更多spring boot启动输出: 2015-03-06 17:32:30.919 INFO 3688 --- [ main] o.s.jdbc.datasource.init.ScriptUt

目标:利用spring启动功能创建一个简单的数据库并加载数据

问题:在spring引导启动期间接收到错误

org.hibernate.tool.hbm2ddl.SchemaExport  : Column "FIRSTNAME" not found; SQL statement
更多spring boot启动输出:

2015-03-06 17:32:30.919  INFO 3688 --- [           main] o.s.jdbc.datasource.init.ScriptUtils     : Executing SQL script from URL [file:/E:/spring-workspace/TestApp/target/classes/schema.sql]
2015-03-06 17:32:30.926  INFO 3688 --- [           main] o.s.jdbc.datasource.init.ScriptUtils     : Executed SQL script from URL [file:/E:/spring-workspace/TestApp/target/classes/schema.sql] in 4 ms.
2015-03-06 17:32:31.024  INFO 3688 --- [           main] j.LocalContainerEntityManagerFactoryBean : Building JPA container EntityManagerFactory for persistence unit 'default'
2015-03-06 17:32:31.034  INFO 3688 --- [           main] o.hibernate.jpa.internal.util.LogHelper  : HHH000204: Processing PersistenceUnitInfo [
    name: default
    ...]
2015-03-06 17:32:31.114  INFO 3688 --- [           main] org.hibernate.Version                    : HHH000412: Hibernate Core {4.3.6.Final}
2015-03-06 17:32:31.119  INFO 3688 --- [           main] org.hibernate.cfg.Environment            : HHH000206: hibernate.properties not found
2015-03-06 17:32:31.120  INFO 3688 --- [           main] org.hibernate.cfg.Environment            : HHH000021: Bytecode provider name : javassist
2015-03-06 17:32:31.373  INFO 3688 --- [           main] o.hibernate.annotations.common.Version   : HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
2015-03-06 17:32:31.427  INFO 3688 --- [           main] org.hibernate.dialect.Dialect            : HHH000400: Using dialect: org.hibernate.dialect.H2Dialect
2015-03-06 17:32:31.545  INFO 3688 --- [           main] o.h.h.i.ast.ASTQueryTranslatorFactory    : HHH000397: Using ASTQueryTranslatorFactory
2015-03-06 17:32:31.848  INFO 3688 --- [           main] org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000227: Running hbm2ddl schema export
2015-03-06 17:32:31.853 ERROR 3688 --- [           main] org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000388: Unsuccessful: insert into customer (firstname, lastname) values ('James', 'Last')
2015-03-06 17:32:31.853 ERROR 3688 --- [           main] org.hibernate.tool.hbm2ddl.SchemaExport  : Column "FIRSTNAME" not found; SQL statement:
insert into customer (firstname, lastname) values ('James', 'Last') [42122-176]
2015-03-06 17:32:31.856  INFO 3688 --- [           main] org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000230: Schema export complete
schema.sql可在/resources中找到

drop table customer if exists;

create table customer (
    id bigint auto_increment,
    firstname varchar(80) null,
    lastname varchar(80) null
);
insert into customer (firstname, lastname) values ('James', 'Last');
import.sql可在/resources中找到

drop table customer if exists;

create table customer (
    id bigint auto_increment,
    firstname varchar(80) null,
    lastname varchar(80) null
);
insert into customer (firstname, lastname) values ('James', 'Last');
pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<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>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.1.8.RELEASE</version>
    </parent>
    <artifactId>TestApp</artifactId>
    <packaging>war</packaging>
    <name>Spring Boot Web JSP Sample</name>
    <description>Spring Boot Web JSP Sample</description>
    <url>http://projects.spring.io/spring-boot/</url>
    <organization>
        <name>Pivotal Software, Inc.</name>
        <url>http://www.spring.io</url>
    </organization>
    <properties>
        <main.basedir>${basedir}/../..</main.basedir>
        <m2eclipse.wtp.contextRoot>/</m2eclipse.wtp.contextRoot>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
        </dependency>
       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
        </dependency>           
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <useSystemClassLoader>false</useSystemClassLoader>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

4.0.0
org.springframework.boot
spring启动程序父级
1.1.8.发布
特斯塔普
战争
SpringBootWebJSP示例
SpringBootWebJSP示例
http://projects.spring.io/spring-boot/
Pivotal软件公司。
http://www.spring.io
${basedir}/./。。
/
org.springframework.boot
SpringBootStarterWeb
org.springframework.boot
弹簧启动机tomcat
假如
org.apache.tomcat.embed
汤姆卡特·贾斯珀
假如
javax.servlet
jstl
org.springframework.boot
spring引导启动器数据jpa
com.h2数据库
氢
org.springframework.boot
弹簧起动试验
测试
org.springframework.boot
springbootmaven插件
org.apache.maven.plugins
maven surefire插件
假的

import.sql
重命名为
data.sql
。这很有效,但当我尝试使用CRUDREposition检索它时,什么都没有出现。我有一个@Entity Customer对象,它有一个对应的crudepository。它似乎在使用另一个数据库。如何将schema.sql链接到crudepository?您不应该配置任何内容,Spring Boot应该为您自动配置所有内容。@M.Deinum您是正确的,Spring Boot将自动配置几乎所有内容,但在本例中,它自动配置了两个独立的数据源。实际上,我找到了一些必需的代码,以确保我的Crudepository指向通过data.sql加载的H2数据库。