SSM框架的搭建环境(Spring,SpringMVC,Mybatis)

使用工具:maven、idea、tomcat用的是8、jdk版本1.8

一、整个项目的结构:

javaweb项目:用户(登录和注销)实现 SSM框架(mybatis-generator自动生成代码)_mybatis-generator

用户模块流程

pom.xml -> web.xml -> db->model (此处是User,与数据库中的字段名相同) -> UserMapper -> UserMapper.xml(这里是用的mybatis映射,直接动态实现dao接口的实现类) -> UserService -> UserServiceImpl -> UserController,这就是一个大体流程,下面开始介绍模块完成:

  1. 新建maven项目、按照自己的需要新建相关的文件夹:
  2. maven中的pom.xml文件添加依赖:
  3. 配置web.xml
  4. spring整合mybatis(dao层)的配置文件:spring-dao.xml
  5. UserService层接口及实现类:UserService,UserServiceImpl

  6. Spring整合Service层的配置文件:spring-service.xml

  7. mybatis-config.xml配置文件

  8. web层的实现(controller层,springmvc):UserController

  9. Spring整合controller层的配置文件:spring-web.xml

  10. JSP页面:login.jsp,fail.jsp,anotherpage.jsp,success.jsp

以上这些操作参考博文:SSM搭建(整合)+用户模块(登录和注销)实现

二、接下来介绍如何使用mybatis自动生成代码:

可以参考我之前的一篇:如何使用mybatis自动生成代码:​​​​​​​

1、配置pom.xml:

添加plugin:

<!-- 自动生成代码插件 -->
          <plugin>
              <groupId>org.mybatis.generator</groupId>
              <artifactId>mybatis-generator-maven-plugin</artifactId>
              <version>1.3.2</version>
              <configuration>
                  <!--指定配置文件的名称,默认是 ${basedir}/src/main/resources/generatorConfig.xml-->
                  <configurationFile>${mybatis.generator.generatorConfig.xml}</configurationFile>
                  <!--指定该参数,则生成java文件时,直接覆盖原来的文件.默认是false,即会对生成的java文件进行编号来标记不是相同的执行结果,由用户来自行合并java文件-->
                  <overwrite>true</overwrite>
                  <!--如果指定该参数,则会输出执行过程-->
                  <verbose>true</verbose>
              </configuration>
          </plugin>

设置配置文件的位置:

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
    <!--设置mybatis-generator配置文件位置--><mybatis.generator.generatorConfig.xml>${basedir}/src/test/resources/generatorConfig.xml</mybatis.generator.generatorConfig.xml>
    <mybatis.generator.generatorConfig.properties>file:///${basedir}/src/test/resources/generatorConfig.properties</mybatis.generator.generatorConfig.properties>

  </properties>

2、配置文件generatorConfig.properties、generatorConfig.xml

generatorConfig.properties:

# 数据库驱动jar 路径
drive.class.path=E:/Java Web/maven/repositoryBus/mysql/mysql-connector-java/5.1.30/mysql-connector-java-5.1.30.jar
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
jdbc.username=root
jdbc.password=

# 包路径配置
model.package=com.gis.db.model
dao.package=com.gis.db.dao
xml.mapper.package=com.gis.db.dao

target.project=src/main

generatorConfig.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<!-- 配置Run As Maven build : Goals 参数 : mybatis-generator:generate -Dmybatis.generator.overwrite=true -->
<!-- 配置 tableName,使用 Run As Maven build 生成 dao model 层 -->
<generatorConfiguration>
    <!-- 配置文件路径 -->
    <properties url="${mybatis.generator.generatorConfig.properties}"/>
    <!-- <properties resource="generatorConfig.properties"/>-->

    <!--数据库驱动包路径 -->
    <classPathEntry location="${drive.class.path}"/>

    <context id="DB2Tables" targetRuntime="MyBatis3">
        <!--关闭注释 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <!--数据库连接信息 -->
        <jdbcConnection driverClass="${jdbc.driver}" connectionURL="${jdbc.url}" userId="${jdbc.username}"
                        password="${jdbc.password}">
        </jdbcConnection>

        <!--生成的model 包路径 -->
        <javaModelGenerator targetPackage="${model.package}" targetProject="${target.project}">
            <property name="enableSubPackages" value="ture"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <!--生成xml mapper文件 路径 -->
        <sqlMapGenerator targetPackage="${xml.mapper.package}" targetProject="${target.project}">
            <property name="enableSubPackages" value="ture"/>
        </sqlMapGenerator>

        <!-- 生成的Dao接口 的包路径 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="${dao.package}" targetProject="${target.project}">
            <property name="enableSubPackages" value="ture"/>
        </javaClientGenerator>

        <!--对应数据库表名 -->
        <table tableName="user" domainObjectName="User" >
        </table>

    </context>
</generatorConfiguration>

3、使用mybatis自动生成代码:

在Intellij IDEA添加一个“Run运行”选项,使用maven运行mybatis-generator-maven-plugin插件

点击 菜单run中Edit Configurations,会出现:

javaweb项目:用户(登录和注销)实现 SSM框架(mybatis-generator自动生成代码)_spring_02

点击+号,选择maven,会出现

javaweb项目:用户(登录和注销)实现 SSM框架(mybatis-generator自动生成代码)_spring_03

在name和Commond line分别填上如上图所示,apply和ok

最后点击generator,生成model,mapper,dao

javaweb项目:用户(登录和注销)实现 SSM框架(mybatis-generator自动生成代码)_ssm_04

源码地址:需要请留言~