全栈开发实战 | SSM框架整合完整教程

一个人最好的状态:梦想藏在心里,行动落于腿脚。

目录

1、前言

2、基本概念

2.1 MyBatis

2.2 Spring

2.3 SpringMVC

3、开发环境搭建

 3.1 整合Spring框架

3.2 整合SpringMVC框

3.3 添加SpringMVC框架支持

3.4 配置SpringMVC核心控制器

3.5 测试SpringMVC框架

4、部署Tomcat和相关环境

5、整合MyBtis框架

5.1 测试MyBatis框架


1、前言

前几篇我的几个系列文章分别介绍了MyBatis、Spring、SpringMVC框架的基本入门以及一些常用知识点,既然框架各有优点,那么我们是否可以将这几个框架进行整合?

下面就开始手把手教你搭建SSM框架,在这之前我们先总结一下这三个框架。

2、基本概念

2.1 MyBatis

MyBatis是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。

2.2 Spring

Spring是一个开源的重量级的应用开发框架,其目的是用于简化企业级应用程序开发,降低开发者的开发难度

Spring提供的IOC和AOP应用,可以将组建的耦合度降到最低(即解耦),便于系统日后的维护和升级

Spring为系统提供了一个整体的解决方案,开发者可以利用它自身提供的功能外,也可以与第三方框架和技术整合应用,可以自由选择利用哪种技术进行开发

2.3 SpringMVC

SpringMVC是Spring框架的一个模块,Spring和SpringMVC无需中间层整合

SpringMVC提供了基于MVC(模型—视图—控制器)架构和用于开发灵活和松耦合的web应用程序的组件

3、开发环境搭建

创建一个基于maven的web工程

  • 点击File,新建Project项目

全栈开发实战 | SSM框架整合完整教程_第1张图片

 

  • 选中Maven,勾上Creater from archetype选项,按照图中数字顺序选中后点击Next按钮即可

全栈开发实战 | SSM框架整合完整教程_第2张图片

 

  • 依次填写groupid和artifactid后点击next即可

全栈开发实战 | SSM框架整合完整教程_第3张图片

 

  • 选中提前配置好的maven,点击next

全栈开发实战 | SSM框架整合完整教程_第4张图片

 

  • 输入项目名称Spring,点击Finish即可

全栈开发实战 | SSM框架整合完整教程_第5张图片

 

  • 这样就创建好了一个名称为SSM的maven  web项目,结构如下图:

全栈开发实战 | SSM框架整合完整教程_第6张图片

  • 项目创建完成之后没有的java,resources,test包自己创建即可
  • 我们可以看到包创建好之后是灰色的,需要选中相应的文件夹右击Mark Directory as,选中相应的颜色即可

  • 现在项目的结构就变成了如下样子:

全栈开发实战 | SSM框架整合完整教程_第7张图片

 3.1 整合Spring框架

  • 在pom.xml文件中导入所需要的的jar包


            junit
            junit
            4.11
            test
        
        
        
            org.springframework
            spring-core
            5.1.5.RELEASE
        
        
            org.springframework
            spring-context
            5.1.5.RELEASE
        
        
        
            org.springframework
            spring-test
            5.1.5.RELEASE
            test
        
        
        
            org.springframework
            spring-aop
            5.1.5.RELEASE
        
        
            aopalliance
            aopalliance
            1.0
        
        
            org.aspectj
            aspectjrt
            1.9.2
        
        
            org.aspectj
            aspectjweaver
            1.9.2
            runtime
        
        
        
            org.springframework
            spring-jdbc
            5.1.5.RELEASE
        
        
        
            org.springframework
            spring-tx
            5.1.5.RELEASE
        
        
            org.projectlombok
            lombok
            1.18.8
        

3.2 整合SpringMVC框

  • 在pom.xml文件中导入所需要的的jar包

       
            org.springframework
            spring-web
            5.1.5.RELEASE
        
        
            org.springframework
            spring-webmvc
            5.1.5.RELEASE
        

3.3 添加SpringMVC框架支持

  • 在项目名SpringMVC上右击选择Add framework support

全栈开发实战 | SSM框架整合完整教程_第8张图片

 

  • 按照图中方框中的提示选中后点击ok按钮即可

全栈开发实战 | SSM框架整合完整教程_第9张图片

 注意:如果我们在点击Add framework support中找不到Spring,那么有可能项目中已经存在了Spring文件,但不一定是完善的,我们只需要把它删除然后重新添加即可

方法:点击File,选择Project Structure,选择Facets,就会看到有一个Spring,右击它,点删除就行啦,然后再回到上一个步骤重新Add framework support,Spring就会出现啦。

全栈开发实战 | SSM框架整合完整教程_第10张图片

 添加SpringMVC支持后,我们会发现项目目录中多了两个文件,我又单独创建了一个views用来存放映射文件JSP等

全栈开发实战 | SSM框架整合完整教程_第11张图片

3.4 配置SpringMVC核心控制器




    
    
        springMVC
        org.springframework.web.servlet.DispatcherServlet
        
            
            contextConfigLocation
            /WEB-INF/dispatcher-servlet.xml
        
        1
        true
    
    
        springMVC
        /
    

    
    
        contextConfigLocation
        /WEB-INF/applicationContext.xml
    
    
        org.springframework.web.context.ContextLoaderListener
    
  • 在web.xml中配置SpringMVC的核心信息

  • 配置SpringMVC乱码处理过滤器


    
        CharacterEncodingFilter
        org.springframework.web.filter.CharacterEncodingFilter
        
            encoding
            
            utf-8
        
    
    
        CharacterEncodingFilter
        /*
    
  • 配置dispatcher-servlet.xml文件信息




    

    
    

    
    

    
    

    
    
        
        
    

3.5 测试SpringMVC框架

  • 创建并编写HelloController类

@Controller
public class HelloController {
     /**
     * 这个注解用于:映射请求的资源路径(/hello)和当前方法(hello)的对应关系
     * 当浏览器请求 /hello 路径时, 将会访问(执行)当前这个方法 
     */
    @RequestMapping("/hello")
    public String hello() {
        System.out.println("hello springmvc...");
        return "home";
    }
}
  • 在WEB-INF/views/目录下创建home.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


hello springmvc~~~

4、部署Tomcat和相关环境

  • 在 Run 菜单项下找到 Edit Configurations 

全栈开发实战 | SSM框架整合完整教程_第12张图片

 

  • 配置Tomcat环境

 全栈开发实战 | SSM框架整合完整教程_第13张图片

 

  • 选择好本地的Tomcat并修改好名称

全栈开发实战 | SSM框架整合完整教程_第14张图片

 

  • 在Deployment页面下完成以下操作

全栈开发实战 | SSM框架整合完整教程_第15张图片

 

  • 在弹出框中选中SSM:war exploded后点击OK

全栈开发实战 | SSM框架整合完整教程_第16张图片

 

  • 启动Tomcat服务器,进行测试

全栈开发实战 | SSM框架整合完整教程_第17张图片

 成功在浏览器页面上显示出了页面中的数据内容

5、整合MyBtis框架

在之前的文章中我写过一篇关于MyBatis的快速入门教程,可以参考以下链接:

全栈开发实战 | MyBatis框架快速入门第一篇

  • 在pom.xml文件中导入所需要的的jar包


        
            org.mybatis
            mybatis
            3.4.4
        
        
            org.mybatis
            mybatis-spring
            1.3.2
        
        
        
            mysql
            mysql-connector-java
            8.0.16
        
  • 在resources文件包下创建db.properties文件

database.driver=com.mysql.jdbc.Driver
database.url=jdbc:mysql://localhost:3306/db1
database.username=root
database.password=erp1234

之前我们在MyBatis快速入门教程里是在mybatis-config.xml文件中配置MyBatis的核心信息,现在我们要做SSM框架整合,可以将MyBatis的配置交给Spring去处理

  • 配置applicationContext.xml文件信息




    
    

    
    
        
        
        
        
    

    
    
        
        
    

    
    
        
        
    

5.1 测试MyBatis框架

  • 创建Student实体类,并使用lombok注解代替get、set、有参构造和无参构造等方法

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Student  {
    private String id;
    private String name;
    private String birth;
    private String sex;
}
  • 创建StudentMapper接口类,并提供getStudentById方法

package com.cn.dao;
import com.cn.pojo.Student;

public interface StudentMapper {

    Student getStudentById(String id);

}
  • 创建StudentMapper.xml文件(实体类的映射文件)




    
    
    
  • 创建并编写TestSSM类

/**
 * 测试SSM开发环境
 */
@Controller
public class TestSSM {

    @Autowired
    StudentMapper studentMapper;

    @RequestMapping("/testSSM")
    public void testSSM(){
        Student student = studentMapper.getStudentById("01");
        System.out.println(student);
    }
}
  • 输出结果

全栈开发实战 | SSM框架整合完整教程_第18张图片

 

我们看到报异常了,大概意思就是找不到mapper的映射文件,也就是说JAVA在编译的时候把  mapper.xml  文件给漏掉了,解决方案就是在pom.xml文件中添加如下代码即可:


    
      
        src/main/java
        
          **/*.properties
          **/*.xml
        
        true
      
    
  
  • 再次访问,输出结果

到这里这个简单的ssm框架就算搭建完成了,看起来过程很长,但实际操作起来应该是没有太大难度,细心一点就可以了

这一篇是在之前文章的基础上做了一个框架之间的整合,方便我们以后开发,大家对之前的文章感兴趣可以点击以下链接:

全栈开发实战 | MyBatis框架快速入门第一篇

全栈开发实战 | MyBatis框架快速入门第二篇

全栈开发实战 | Spring框架快速入门第一篇

全栈开发实战 | Spring框架快速入门第二篇

全栈开发实战 | Spring框架快速入门第三篇

全栈开发实战 | SpringMVC框架快速入门第一篇

全栈开发实战 | SpringMVC框架快速入门第二篇

全栈开发实战 | SpringMVC框架快速入门第三篇

你可能感兴趣的:(SSM框架快速入门,spring,mybatis,java,mvc,后端)