Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Tomcat.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.tomcat.jdbc.pool.DataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active)
Description:
Cannot determine embedded database driver class for database type NONE
Action:
If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).
debug模式多一句Connected to the target VM, address: '127.0.0.1:43101', transport: 'socket'
那个端口每次都不一样
idea+maven 部署spring连不上数据库
答案:2 悬赏:0 手机版
解决时间 2021-02-22 05:00
- 提问者网友:遮云壑
- 2021-02-21 17:24
最佳答案
- 五星知识达人网友:旧脸谱
- 2021-02-21 18:32
你用了spring,但却没有看到你把session注入到配置文件中, applicationContext.xml也没有看到关于事物的配置。 用了spring后这些应该都交给spring来做的,我们是不用管close的,不然用spring还有什么用,配置半天还和原来一样,那还不如不用呢
全部回答
- 1楼网友:执傲
- 2021-02-21 18:42
创建maven web项目
菜单file->new
project可进入如图界面,首先选择左边栏maven,再配置jdk(如果之前添加了jdk的话会自动填充,如未添加点击旁边的new将jdk目录导入即可)。勾选"create
from archetype",然后选中maven-archetype-webapp,点next,进入如下界面:
这里需要填写groupid和artifactid,version默认即可,这三个属性可以唯一标识你的项目。
我自己的maven配置
填写项目名,选择项目保存路径,点击finish:
maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定.
下图展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的enable-auto-
import,可以在每次修改pom.xml后,自动的下载并导入jar包。
我们可以看到,目录结构并不是严格的maven格式,因为少了java源码文件夹
首先在main文件夹下创建一个文件夹,名称为java
将java文件夹标识为source root
可以看到文件夹的颜色变了,设置完成~
maven自动导入jar包
我们使用maven管理依赖~
maven所做的工作就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是maven repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的:
4.0.0
com.winner
winner-test
war
1.0-snapshot
winner-test maven webapp
http://maven.apache.org
junit
junit
3.8.1
test
winner-test
我们可以看到这个文件包含了我们之前定义的本项目的groupid等信息,这些信息是该项目的标识,我们不要去改动它们。重点看标签,翻译过来是"依赖"的意思,也就是说把对每个包的需求都称为一个依赖,定义在中。在每个中,你需要提供的是所需jar包的groupid、artifactid、version(g,a,v)这三个必要信息(坐标)。比如上面我们看到引入可一个junit包,格式如下:
junit
junit
3.8.1
test
这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。要查看这些jar包的3个信息呢,需要查阅仓库。比如我们需要引入spring-webmvc包,打开maven repository,搜索spring-webmvc,进入如下界面:
选择最新版本4.2.5.release,可以看到其dependency写法如下红框所示:
我们将其复制到pom.xml中的中:
这样,maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中external libraries:
可以发现,虽然我们只写了一个依赖,但是会把与它密切相关的jar包同时导入进来。
自此演示一个简单的maven项目所需的jar包其实已经够了~
springmvc框架配置
现在进行项目的配置
1、web.xml配置,默认情况下生成的web.xml的配置如下:
archetype created web application
这并是不我们需要的,暂未找到更改生成web.xml配置的方法,知道的麻烦告知一下,谢谢~
--->
winner-test web application
在web.xml中创建spring mvc的中央控制器
winner-test web application
mvc-dispatcher
org.springframework.web.servlet.dispatcherservlet
contextconfiglocation
classpath:mvc-dispatcher.xml
1
mvc-dispatcher
*.do
该servlet名为mvc-dispatcher(名称可修改),用于拦截请求(url-pattern为*.do),并交由spring mvc的后台控制器来处理。这一项配置是必须的
为了能够处理中文的post请求,再配置一个encodingfilter,以避免post请求中文出现乱码情况:
encodingfilter
org.springframework.web.filter.characterencodingfilter
encoding
utf-8
forceencoding
true
encodingfilter
/*
至此,web.xml配置完毕。
2、mvc-dispatcher.xml配置
在配置完web.xml后,在resources文件夹下创建spring配置文件mvc-dispatcher.xml:
mvc-dispatcher.xml文件如下:
代码如下:
@controller
public class maincontroller {
@requestmapping(value = "/test.do",method = requestmethod.get)
public string index() {
return "index";
}
}
--@controller注解:采用注解的方式,可以明确地定义该类为处理请求的controller类;
--@requestmapping()注解:用于定义一个请求映射,value为请求的url;
--return "index":处理完该请求后返回的逻辑视图。
回到mvc-dispatcher.xml,进行相关配置。
现在,需要配置tomcat来运行该项目。
run->edit configurations
点击左上角的"+"号,选择tomcat server,(如果没有请选择最下方的33 items more,找到tomcat server),再选择local:
点击 application server 右边的 configure,导入tomcat 目录:
切换到deployment标签,再点击右边的"+"号,添加一个artifact.
选择第二个:war exploded,点击ok,这样,该项目就已经部署到了tomcat中.
再点击ok,整个tomcat配置结束.
运行tomcat
项目启动加载完毕后访问http://127.0.0.1:8080/test.do
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯