还是那句话,网上大都是误人子弟…麻烦要死…搞一堆东西没啥用的…讲也不讲清楚的…垃圾教程。

不过还是有幸找到了一篇好的供学习总结了一下…

先给上链接: http://blog.csdn.net/gallenzhang/article/details/51932152

 

然后如果还没有运行起来的 SpringMVC Demo的话,可以先看前一篇文章:

http://blog.tk-xiong.com/archives/1227

 

然后这里我们按前一篇文章给出的教程,创建一个web项目…请注意,仅仅只创建出来,不做任何修改。

得到目录如下:

这里可以要注意,这就是项目刚创建出来的样子…

然后接下来我们要先将 SpringMVC 的Demo运行起来。

 

 


章节一:运行SpringMVCDemo…

这一部分可以按照前一篇文章来搞…

1. 加载相关依赖项

这里我可以看到创建后自带有一个 junit3.8.1 我选择删掉。

然后加上一个 spring-webmvc 的依赖。

为了稳定,我还是选择了 4.3.6.RELEASE 版本…虽然刚刚 4.3.7 出来了。

 

2. 修改 web.xml 文件

修改分为两个部分,第一部分是要更换掉这个版本较低的头部文件。

未修改前:

 

修改后:

 

大致就是这样,相比上一篇的话,多了一个指定欢迎页面,希望大家能接受。不能就删掉它…手动微笑。

 

这里的servlet和之前的相比,换了一种方式。之前的是默认地址载入,这次换成了从资源位置载入。

说实话我不太懂这些…我也是初学,希望不要教坏你们了。

 

所以接下来我们要做的事情就是 写 spring-mvc.xml文件…

它相当于我们前一篇文章里的  XXX-servlet.xml 文件…

 

这次我们在 Resources 里面添加 spring-mvc.xml 文件。

内容如下:注意 com.tank.comtroller…

 

然后接下来我们要在 main.java 里面创建 com.tank.controller 文件夹…

当然我们要先创建java ,设置为 Sources 然后再创建这个  com.XXX 对吧?

创建完毕后如下所示:

当然你可以借此机会,看清之前的 spring-mvc.xml 文件的位置了

注意是在 resources 文件夹下面的哦…

 

接下来我们应该写 MainController 了…(在 com.tank.controller 文件夹下面创建 MainController 的Java类)

最终内容如下:

 

接下来我们可能要尝试运行下SpringMVC…

这次我们不用Local的Tomcat…而是用Maven的插件…是的,换了一种方法。

 

首先我们需要修改Pom.xml文件。

在<build> 里面添加如下代码:

修改后pom.xml文件如下:

 

然后接下来教配置 Tomcat…

如图操作即可:

在右上角找到这个下三角,点 Edit…

点击这个加号,然后找到Maven…

接下来,就是要改名了…然后写 运行代码

 

然后点击运行…右上角绿色的…不解释了。

 

运行完了之后,打开浏览器,链接如下网址:

http://localhost:8080/

 

然后应该是得到一个Hello World!

好了 SpringMVC 配置完毕…

 


 

接下来是 Spring 和 MyBatis 的集成。

在此之前我们需要一个数据库…Mysql – 当然我这里是用Mysql做例子的。

 

首先创建一个数据库,名字叫 mybatis…当然我这里是这个名字…

然后内容如下:

 

创建好了之后,我们就该…搞其他事了,比如,链接数据库?

比如我们先写一个 jdbc.properties 文件。存放数据库的链接信息。

作为资源文件,还是放在 Resources 里面好了。

内容如下:——记得替换password内容!

 

然后我们针对我们刚才写的数据库内容,写一些文件。

大致分为: Model…Service…Dao…三层的样子。

实际上是四个文件…(⊙﹏⊙)b

文件1. User

在java文件夹下面新建一个 com.tank.model,如下图:

 

然后,在里面创建一个 User 的 Java类。

编码内容如下:

 

然后 再创建 Service 和 Dao 两个文件夹,然后创建UserService 和 UserDao两个类

创建完毕后,如下图:

内容如下:

UserDao:

 

UserService:

 

写完之后,发现,Service 是没出什么问题的,但是Dao好像有一些包报错了…

好像是  ibatis 这个东西… 它好像是 MyBatis的前身?

那我们给 pom.xml 文件里面添加MyBatis的库

 

PS.这里如果不知道放哪里的话,等会我会给出全部的pom.xml文件,或者git地址的。

 

接下里,我们要在 Service 层里面去添加 一个 Impl 文件夹,以及 UserServiceImpl Java类

内容我已经贴出来了,不过荣阳可以看到一些报错信息…

等会解决,我先把 UserServiceImpl 内容给你..

 

然后解决这个问题哈。。。还是在Pom.xml里面加包

 

好了,不报错了…

 

接下来我们写一个 spring-batis.xml 文件。用来设置 spring 和 batis 集成的配置信息。

创建目录还是在 Resource里面。

内容如下:

注意是这样创建的哦…

内容如下:

 

然后可以发现又报错了…

主要是在这里:

和这这里…

还有一个 mapping这里是文件夹的问题…等会儿讲。

 

分别对应两个包…加上去。

 

然后先解决文件夹问题吧。

这里在 Resources 目录下创建 mapping 文件夹。

mapping 文件夹里面 创建 UserMapping.xml 文件。

这样可以发现它的报错就没了。

然后UserMapping 内容如下:

 

到这里,数据库配置大致就写完了…重要的操作也差不多了。

接下来就是解决 数据库的…数据展示。

 

我们在WEB-INF文件夹里面创建一个jsp文件夹。

然后在文件夹里面创建一个 ShowUser.jsp

如下图:

然后修改文件内容,用来展示数据。——前面信息保不保留随意的。

 

然后可以发现报错了。好像是jstl…那就pom.xml文件…继续加好了。

 

最后我们要修改 Controller 来让它将一个页面指向 ShowUser.jsp …

修改后内容如下:

 

可以发现http报错…恩,你知道又要加 pom.xml的文件了。

 

然后接下来,我们是不是忘了把 spring-batis 加进来?

所以在 web.xml 里面增加这两段:

 

看起来好像没什么错了?

我忽然发现,我把 showUser 打成了 ShowUser…

不知道有没有人发现。然后运行

打开 http://localhost:8080/showUser

发现还是 404…

那就在sping-mvc.xml 里面加上一小段

 

然后再运行… 500…

掉了包!!! 数据库驱动包!

在pom.xml里面增加:

 

再运行…成功!

最后是垃圾的 Git 地址: https://github.com/tk-xiong/SSMDemo

 

Tips: 这里如果项目运行不起来,那就把 Tomcat 的配置换成第一篇文章里的那种本地的方式试试 。好吧,我承认我换了!

 

其他,有问题留言,尽力帮助解决。每天都在线。

【SpringMVC】IntelliJ IDEA + MySql + SpringMVC + Spring + MyBatis 的 SSMDemo
Tagged on:
0 0 投票数
Article Rating
订阅评论
提醒

1 评论
最新
最旧 最多投票
内联反馈
查看所有评论

大佬,运行的时候报这个错误是什么意思
30-Aug-2018 17:14:37.751 警告 [RMI TCP Connection(5)-127.0.0.1] org.springframework.web.context.support.XmlWebApplicationContext.refresh Exception encountered during context initialization – cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘mainController’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userServiceImpl’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘com.two.dao.UserDao’ available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@javax.annotation.Resource(shareable=true, lookup=, name=, description=, authenticationType=CONTAINER, type=class java.lang.Object, mappedName=)}
30-Aug-2018 17:14:37.756 严重 [RMI TCP Connection(5)-127.0.0.1] org.springframework.web.context.ContextLoader.initWebApplicationContext Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘mainController’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userServiceImpl’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘com.two.dao.UserDao’ available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@javax.annotation.Resource(shareable=true, lookup=, name=, description=, authenticationType=CONTAINER, type=class java.lang.Object, mappedName=)}