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

手把手構建 SSM 整合專案:Struts2 + Spring3 + MyBatis Maven 完整配置指南

     編輯:Java 綜合教學

專案背景與技術棧

記錄一次經典的 SSM(Struts2 + Spring + MyBatis)整合專案搭建過程,作為個人學習備份。採用 Maven 管理依賴,適用於維護老專案或理解傳統框架整合原理。

開發環境

  • IDE:MyEclipse 10
  • 構建工具:Maven 3.2.3
  • 資料庫:MySQL 5.7

核心框架版本

框架版本
Struts22.3.24.1
Spring3.0.5.RELEASE
MyBatis3.2.2
MyBatis-Spring1.2.1
MySQL Connector5.1.37

完整 pom.xml 配置解析

<project xmlns="https://maven.apache.org/POM/4.0.0" ...>
  <modelVersion>4.0.0</modelVersion>
  <groupId>MavenDemo</groupId>
  <artifactId>MavenDemo</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <struts.version>2.3.24.1</struts.version>
    <spring.version>3.0.5.RELEASE</spring.version>
    <mybatis.version>3.2.2</mybatis.version>
    <mysql.version>5.1.37</mysql.version>
    <slf4j.version>1.7.5</slf4j.version>
  </properties>

  <dependencies>
    <!-- Struts2 核心與插件 -->
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-core</artifactId>
      <version>${struts.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-spring-plugin</artifactId>
      <version>${struts.version}</version>
    </dependency>

    <!-- Spring 全家桶 -->
    <dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency>
    <dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.version}</version></dependency>
    <dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>${spring.version}</version></dependency>
    <!-- 其餘 spring-aop, spring-tx, spring-context 等省略 -->

    <!-- MyBatis 整合 -->
    <dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>${mybatis.version}</version></dependency>
    <dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.2.1</version></dependency>

    <!-- 資料庫與日誌 -->
    <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency>
    <dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>${slf4j.version}</version></dependency>
  </dependencies>

  <build>
    <sourceDirectory>${basedir}/src</sourceDirectory>
    <outputDirectory>${basedir}/WebRoot/WEB-INF/classes</outputDirectory>
    <resources>
      <resource>
        <directory>${basedir}/src</directory>
        <excludes><exclude>**/*.java</exclude></excludes>
      </resource>
    </resources>
    <plugins>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <configuration>
          <webappDirectory>${basedir}/WebRoot</webappDirectory>
          <warSourceDirectory>${basedir}/WebRoot</warSourceDirectory>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration><source>1.6</source><target>1.6</target></configuration>
      </plugin>
    </plugins>
  </build>
</project>

關鍵配置說明

  • 屬性統一管理:透過 <properties> 統一版本號,便於升級維護。
  • Struts2-Spring 整合:struts2-spring-plugin 讓 Action 由 Spring 容器管理。
  • 資源檔案處理:<resources> 區塊確保 XML、properties 等配置檔複製到輸出目錄。
  • 編碼與編譯:指定 UTF-8 與 JDK 1.6,避免中文亂碼與版本不匹配。

後續擴展方向

專案跑通基礎流程後,計劃整合 Shiro 進行權限控制,並補全單元測試與攔截器配置。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved