天天看點

javaweb項目:使用者(登入和登出)實作 SSM架構(mybatis-generator自動生成代碼)

SSM架構的搭建環境(Spring,SpringMVC,Mybatis)

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

一、整個項目的結構:

javaweb項目:使用者(登入和登出)實作 SSM架構(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自動生成代碼)

點選+号,選擇maven,會出現

javaweb項目:使用者(登入和登出)實作 SSM架構(mybatis-generator自動生成代碼)

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

最後點選generator,生成model,mapper,dao

javaweb項目:使用者(登入和登出)實作 SSM架構(mybatis-generator自動生成代碼)

源碼位址:需要請留言~

繼續閱讀