我正在尝试使用Spring + spring数据JPA + Bootstrap创建CRUD应用程序,但我收到此错误

时间:2018-06-07 07:33:53

标签: hibernate jpa

--- exec-maven-plugin:1.2.1:exec(default-cli)@ BootSample ---

。 ____ _ __ _ _  / \ / ' __ _ )_ __ __ _ \ \ \ \ (()_ |' _ |' | |' / `| \ \ \ \  \ / )| | )| | | | | || ( | |))))   ' | ____ | | | | | | | __,| / / / / /  ========= | _ | ============== | ___ / = / / / _ /  :: Spring Boot ::(v1.4.2.RELEASE)

2018-06-07 09:09:32.344 INFO 10208 --- [main] com.mycompany.bootsample.Application:使用PID 10208在LPTADO76上启动应用程序(在D:\ New folder \ java \ projects中由s2026045启动\ BootSample) 2018-06-07 09:09:32.344 INFO 10208 --- [main] com.mycompany.bootsample.Application:没有活动的配置文件集,回退到默认配置文件:default 2018-06-07 09:09:32.484 INFO 10208 --- [main] ationConfigEmbeddedWebApplicationContext:刷新org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@125dc0f:启动日期[Thu Jun 07 09:09:32 GMT + 02: 00 2018];上下文层次结构的根 2018-06-07 09:09:35.773 INFO 10208 --- [main] trationDelegate $ BeanPostProcessorChecker:Bean' org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration'类型[class org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration $$ EnhancerBySpringCGLIB $$ ef6327ab]类型不适合所有BeanPostProcessors处理(例如:不符合自动代理条件) 2018-06-07 09:09:37.393 INFO 10208 --- [main] s.b.c.e.t.TomcatEmbeddedServletContainer:使用端口初始化的Tomcat:8080(http) 2018-06-07 09:09:37.433 INFO 10208 --- [主要] o.apache.catalina.core.StandardService:启动服务Tomcat 2018-06-07 09:09:37.453 INFO 10208 --- [main] org.apache.catalina.core.StandardEngine:启动Servlet引擎:Apache Tomcat / 8.5.6 2018-06-07 09:09:37.793 INFO 10208 --- [ost-startStop-1] o.a.c.c.C. [Tomcat]。[localhost]。[/]:初始化Spring嵌入式WebApplicationContext 2018-06-07 09:09:37.793 INFO 10208 --- [ost-startStop-1] o.s.web.context.ContextLoader:Root WebApplicationContext:初始化在5329 ms完成 2018-06-07 09:09:38.093 INFO 10208 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean:映射servlet:' dispatcherServlet'至 [/] 2018-06-07 09:09:38.103 INFO 10208 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean:映射过滤器:' characterEncodingFilter'至:[/ ] 2018-06-07 09:09:38.103 INFO 10208 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean:映射过滤器:' hiddenHttpMethodFilter'致:[/ ] 2018-06-07 09:09:38.103 INFO 10208 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean:映射过滤器:' httpPutFormContentFilter'至:[/ ] 2018-06-07 09:09:38.103 INFO 10208 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean:映射过滤器:' requestContextFilter'致:[/ ] 2018-06-07 09:09:38.233 WARN 10208 --- [main] ationConfigEmbeddedWebApplicationContext:在上下文初始化期间遇到异常 - 取消刷新尝试:org.springframework.beans.factory.UnsatisfiedDependencyException:创建名称为' org的bean时出错.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration':通过构造函数参数0表示的不满意的依赖;嵌套异常是org.springframework.beans.factory.BeanCreationException:创建名称为' dataSource'的bean时出错。在类路径资源中定义[org / springframework / boot / autoconfigure / jdbc / DataSourceConfiguration $ Tomcat.class]:通过工厂方法的Bean实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.apache.tomcat.jdbc.pool.DataSource]:工厂方法' dataSource'抛出异常;嵌套异常是org.springframework.boot.autoconfigure.jdbc.DataSourceProperties $ DataSourceBeanCreationException:无法确定数据库类型为NONE的嵌入式数据库驱动程序类。如果你想要一个嵌入式数据库,请在类路径上放置一个受支持的数据库。如果要从特定配置文件加载数据库设置,则可能需要激活它(当前没有配置文件处于活动状态)。 2018-06-07 09:09:38.233 INFO 10208 --- [main] o.apache.catalina.core.StandardService:停止服务Tomcat 2018-06-07 09:09:38.463 INFO 10208 --- [主要] utoConfigurationReportLoggingInitializer:

启动ApplicationContext时出错。要显示自动配置报告,请使用' debug'重新运行您的应用程序。启用。 2018-06-07 09:09:38.463 ERROR 10208 --- [主要] o.s.b.d.LoggingFailureAnalysisReporter:

申请失败

说明

无法确定数据库类型为NONE的嵌入式数据库驱动程序类

动作:

如果您需要嵌入式数据库,请在类路径中放置一个受支持的数据库。如果要从特定配置文件加载数据库设置,则可能需要激活它(当前没有配置文件处于活动状态)。

建筑失败

总时间:12.621秒 完成于:2007年6月7日09:09:38 GMT + 02:00 2018

最终记忆:9M / 247M

无法在项目BootSample上执行目标org.codehaus.mojo:exec-maven-plugin:1.2.1:exec(default-cli):命令执行失败。退出并出现错误:1(退出值:1) - > [帮助1]

要查看错误的完整堆栈跟踪,请使用-e开关重新运行Maven。 使用-X开关重新运行Maven以启用完整的调试日志记录。

有关错误和可能的解决方案的更多信息,请阅读以下文章: [帮助1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

这是我的pom.xml

<?xml version="1.0" encoding="UTF-8"?>

http://maven.apache.org/xsd/maven-4.0.0.xsd">     4.0.0

<groupId>com.mycompany</groupId>
<artifactId>BootSample</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>

<name>BootSample</name>

<properties>
    <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.4.2.RELEASE</version>
</parent>

<dependencies>

    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-web-api</artifactId>
        <version>7.0</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>

    <!--sqlserver Connector -->
    <dependency>
        <groupId>com.microsoft.sqlserver</groupId>
        <artifactId>sqljdbc4</artifactId>
        <version>4.0</version>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
                <compilerArguments>
                    <endorseddirs>${endorsed.dir}</endorseddirs>
                </compilerArguments>
            </configuration>
        </plugin>

    </plugins>
</build>

这是我的application.properties文件

&#13;
&#13;
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp

## Spring DATASOURCE (DataSourceAutoConfiguration DataSourceProperties)
spring.datasource.url = jdbc:sqlserver://localhost:8080;databaseName=User
spring.datasource.username = sa
spring.datasource.password = P@ssw0rd
spring.datasource.driver = com.microsoft.sqlserver.jdbc.SQLServerDriver


## Hibernate Properties
# The SQL dialect makes Hibernate generate better SQL for the chosen database
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.SQLServerDialect
logging.level.org.hibernate.SQL = debug

# Hibernate ddl auto (create, create-drop, validate, update)
spring.jpa.hibernate.ddl-auto = create
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:0)

正如您在pom.xml中添加了jpa / data starter,您应该提供任何数据源配置。

如果缺少配置,Boot会抱怨。 示例:http://www.kode12.com/kode12/spring-boot/spring-boot-database-connectivity-mysql-web/

答案 1 :(得分:0)

Spring Boot为内存数据库提供了一些自动配置,例如H2,HSQL和Derby。只需将其中一个的构建依赖项添加到您的pom中,如果您想快速启动并运行,Spring Boot将为您进行配置。

E.g。

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <version>1.4.197</version>
    <scope>test</scope>
</dependency>

更多信息可在以下网址找到:

Embedded Database Support