SSM整合的基本思路梳理

SSM整合的简单思路流程

基本思路

我在整合的时候一般习惯从MyBatis开始向上构建,也就是在开始一个项目的时候先将DAO层搭建起来,再向上整合Spring以及SpringMVC。按照这个流程,可以做出一个比较简单的大致流程作为参考,帮助我们在构建项目以及进行整合的时候有一个比较清晰的思路。

整合流程

1.创建MyBatis项目

我们以基于XML文件的开发为案例,基本的流程是大致相同的,无非就是使用配置文件或者使用注解的区别而已。

1.首先我们创建一个Maven项目,然后添加MyBatis框架。我们要先创建一个软件包,报名叫做com.Spring,我们所有的三层架构的软件包,或者是实体类的软件包都是在这个软件包下创建的。

2.之后我们需要将我们需要用到的依赖都导进我们的pom文件中,然后等待依赖刷新。

3.然后我们就可以开始正式的搭建MyBatis框架了,首先我们需要创建一个dao包,在com.spring包下面,以及创建一个结果集映射类的pojo包

4.然后我们开始编写mapper文件,以及我们的结果集映射类的文件。其实这样我们的MyBatis就已经搭建好了,但是我们的数据源对象和SqlSessionFaction对象是交由我们的Spring去管理的,所以我们暂时无法做测试,当我们整合Spring之后,我们就可以从容器中获取对象去进行测试了。

5.下一步,我们就是整合Spring文件,其实整合的过程就是将MyBatis所需要的数据源对象以及SqlSessionFaction对象和DAO层映射交给Spring的配置文件去管理。我们创建一个Spring的配置文件去将这些配置文件写入进去。

6.完成这一步之后,我们的MyBatis环境就已经搭建完成了,我们可以做一下MyBatis的单元测试,也就是我们可以在test文件夹中创建一个类,然后从容器中获取SqlSessionFaction的类,然后通过这个类获取Mapper接口的动态代理对象,通过动态代理对象调用方法,这时候我们是可以运行出来查询结果的。

到了这个阶段我们可以简单的看一下我们的项目文件结构:

我们的单元测试的结果也可以展示一下:

2.创建Spring部分

1.完成了MyBatis的配置文件之后,我们要再新建一个service包,并且我们再创建一个Spring自己的配置文件,去扫描service包下的控制器。

2.然后我们需要在Service包下面创建一个接口,这个接口中的方法可以和userMapper中的方法一样

3.然后在Service包下面,创建一个Impl包,用来存放实现service接口的类

4.我们在实现类中,使用自动注入的方式将userMapper接口注入进来。

这里需要说一下,因为我们注入的是一个接口,但是我们没有创建这个接口的实现类,所以这里在自动注入的时候时会报错的,这个报错是编译时报错,叫做找不到自动注入的类型。那么我们要知道,我们在MyBatis的配置中是配置了一个接口映射扫描的东西,那么这个东西在扫描到DAO包下面有接口之后,会自动的将这些接口实现,并将实现类注册到我们的容器中,这样在运行的时候就可以正常运行,这个报错可以不处理,如果是看着碍事,可以在IDE中将它改成警告。

5.我们在Service中调用DAO层的接口中的方法,然后将结果返回,然后我们的Spring整合MyBatis也就完成了,我们可以对这一块也进行一个单元测试,对Service的测试就比较复杂,他需要引入单元测试,并且引入配置文件。

我们可以看一下我们是如何进行测试的:

我们知道,当我们选中接口的类名然后点击ctrl+shift+t快捷键可以快速生成接口测试类,但是如果在这个地方你这么做了那么你就可能会导致一个错误叫做空指针异常,就是说你的userService没有正确的自动注入进去。如果你出现了这个错误,那就把上面的那个Test的注解的包名写对,他自己创建的Test的包名可能不适用于你的Spring版本。

然后我们就是可以运行测试,如果配置正确,那么我们就可以得到如下的结果:

红色的是日志啦,肯定不是警告。这样就完成了Spring整合MyBatis,接下来就是Spring整合SpringMVC的过程

Spring整合SpringMVC

这个整合的过程也是非常的简单,因为SpringMVC是Spring的子容器,所以他们只需要各自加载各自的配置文件即可,唯一需要有交集的地方就是需要在web.xml中配置一下读取Spring容器配置文件的标签。

1.首先我们要先添加web框架

2.我们在web.xml文件中需要先导入Spring的容器文件,也就是我们之前写的两个文件都要导入进来。然后继续添加前端控制器。

3.然后创建SpringMVC的配置文件,在这个配置文件中,我们要配置扫描controller包,以及配置注解驱动

4.然后我们创建controller包,然后在这个包下面创建控制器类,我们需要使用自动注入userService,然后我们在控制器类中调用userService。

5.我们查询的结果封装到JSP页面中返回到浏览器前端中。

至此我们就完成了SSM的整合的基本流程的梳理

我确实没有写我们用到的具体的类,以及我们具体的操作,流程主要辅助,还是多练手感,不用看流程也就知道了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SSM整合是指将Spring、SpringMvc和Mybatis这三个框架进行整合,以提高项目的开发效率和代码的复用性。下面是SSM整合思路与配置详解: 1. 配置准备: 在开始整合之前,需要确保你已经配置好了Java开发环境和相应的IDE工具。此外,还要保证你已经下载安装了Spring、SpringMvc和Mybatis的相关依赖库。 2. 配置过程: 2.1 引入依赖: 首先,在你的项目中引入Spring、SpringMvc和Mybatis的相关依赖库。你可以通过在pom.xml文件中添加相应的依赖来完成这一步骤。这些依赖库包括spring-core、spring-webmvc、mybatis等。 2.2 配置Web.xml文件: 在Web.xml文件中,你需要配置Spring和SpringMvc的相关配置。这包括配置DispatcherServlet、ContextLoaderListener和字符编码过滤器等。可以通过在Web.xml文件中添加相应的配置来完成这一步骤。 2.3 配置SpringMvc.xml文件: 在SpringMvc.xml文件中,你需要配置SpringMvc的相关配置,包括扫描控制器、视图解析器、静态资源路径等。可以通过在SpringMvc.xml文件中添加相应的配置来完成这一步骤。 2.4 配置mybatis.xml文件: 在mybatis.xml文件中,你需要配置Mybatis的相关配置,包括数据库连接信息、Mapper扫描路径等。可以通过在mybatis.xml文件中添加相应的配置来完成这一步骤。 2.5 配置applicationContext.xml文件: 在applicationContext.xml文件中,你需要配置Spring的相关配置,包括扫描注解、声明事务管理器等。可以通过在applicationContext.xml文件中添加相应的配置来完成这一步骤。 3. mybatis逆向工程: 如果你想要通过数据库表生成相应的实体类、Mapper接口和Mapper XML文件,可以使用mybatis逆向工程来完成。你需要配置相应的代码生成器,包括数据库连接信息、表名、生成路径等。 总结起来,SSM整合思路是将Spring、SpringMvc和Mybatis三个框架整合在一起,通过配置文件和相关依赖库来实现。具体的配置过程包括引入依赖、配置Web.xml文件、配置SpringMvc.xml文件、配置mybatis.xml文件和配置applicationContext.xml文件。如果需要生成实体类和Mapper文件,可以使用mybatis逆向工程来完成。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [SSM整合思路与配置详解](https://blog.csdn.net/slysxy/article/details/107710775)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [SSM整合,手把手教程,详解思路讲解](https://blog.csdn.net/liyingjie2001/article/details/124809314)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值