首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

SpringMVC 整合 MyBatis 完整教程:基於 IDEA + Maven 的 SSM 搭建實戰

     編輯:Java 綜合教學

SpringMVC + MyBatis 整合全流程指南

本文記錄在 IntelliJ IDEA 中使用 Maven 從零搭建 SpringMVC + MyBatis(SSM)框架的完整步驟,實現商品列表查詢功能,採用註解驅動開發,結構清晰,適合生產項目脚手架參考。

一、整合架構設計

整合架構圖

  • DAO 層: MyBatis Mapper 接口掃描註冊到 Spring 容器,SqlSessionFactory 由 Spring 管理;
  • Service 層: Spring 管理 Service Bean,聲明式事務控制(@Transactional);
  • Web 層: SpringMVC 原生整合,無需額外配置,Controller 注入 Service。

二、Maven 專案結構創建

# 手動創建標準 Maven Web 目錄
src/main/java
src/main/resources
src/main/webapp/WEB-INF
src/test/java

包命名規範:com.公司.項目.模塊,示例為 com.iot.learnssm.firstssm,子包:controller、mapper、po、service、impl。

三、核心依賴配置

<properties>
    <spring.version>4.2.4.RELEASE</spring.version>
</properties>

<dependencies>
    <!-- Spring 核心 -->
    <dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency>
    <dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>${spring.version}</version></dependency>
    <dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency>
    <dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>${spring.version}</version></dependency>
    
    <!-- MyBatis -->
    <dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.3.1</version></dependency>
    <dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.2.4</version></dependency>
    
    <!-- 數據庫連接池 -->
    <dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.4</version></dependency>
    <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.38</version></dependency>
    
    <!-- 日誌 -->
    <dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency>
    <dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.18</version></dependency>
    
    <!-- Web 支持 -->
    <dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency>
    <dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version></dependency>
</dependencies>

避坑提示: 必須引入 spring-core、spring-orm、spring-jdbc 等核心模塊,否則運行時報 NoClassDefFoundError。

四、配置文件體系

  1. db.properties:數據庫連接參數;
  2. log4j.properties:日誌輸出格式;
  3. mybatis/sqlMapConfig.xml:MyBatis 全局配置(別名包掃描);
  4. spring/applicationContext-dao.xml:數據源、SqlSessionFactory、Mapper 掃描器;
  5. spring/applicationContext-service.xml:Service Bean 掃描、事務管理器;
  6. spring/springmvc.xml:視圖解析器、註解驅動、靜態資源映射;
  7. web.xml:ContextLoaderListener、DispatcherServlet、編碼過濾器。

五、下一步開發計劃

後續文章將依次實現:

  1. 逆向工程生成 PO 與基礎 Mapper;
  2. 自定義複雜查詢 Mapper(動態 SQL、結果映射);
  3. Service 層事務邏輯;
  4. Controller 與 JSP 視圖渲染;
  5. 單元測試與整合測試。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved