1. 程式人生 > >SpringBoot整合通用Mapper 分頁外掛 Generator

SpringBoot整合通用Mapper 分頁外掛 Generator

研究了一天終於實現了在springboot中整合通用Mapper,分頁外掛,和Generator,特此記錄一下

首先是整合Generator,有幾種方式,在這裡使用maven整合

  1. 在pom.xml中整合Generator外掛
<plugins>
   <plugin>
       <groupId>org.springframework.boot</groupId>
       <!--熱部署外掛-->
       <artifactId>spring-boot-maven-plugin</artifactId
>
<!--專案每次修改之後重新啟動--> <!--<configuration> <fork>true</fork> </configuration>--> </plugin> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId
>
<version>1.3.5</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> <dependencies> <!--使用6.0以上的版本會生成檔案失敗,暫時不知道原因--> <dependency
>
<groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.44</version> </dependency> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>3.4.5</version> </dependency> </dependencies> </plugin> </plugins>

2.配置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">
<generatorConfiguration>
    <!--匯入屬性配置 -->
    <properties resource="generator.properties"></properties>
    <!--這裡是重點!!targetRuntime要配置MyBatis3Simple而不是MyBatis3
    否則會命名衝突!!-->
    <context id="default" targetRuntime="MyBatis3Simple">
        <!--整合通用Mapper外掛-->
        <plugin type="tk.mybatis.mapper.generator.MapperPlugin">
            <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
        </plugin>
        <!-- 是否去除自動生成的註釋 true:是 : false:否 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
            <property name="suppressDate" value="true"/>
        </commentGenerator>
        <!--jdbc的資料庫連線 -->
        <jdbcConnection driverClass="${jdbc.driver}" connectionURL="${jdbc.url}" userId="${jdbc.username}"
                        password="${jdbc.password}">
        </jdbcConnection>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="true"/>
        </javaTypeResolver>


        <javaModelGenerator targetPackage="${jdbc.entity.package}" targetProject="src/main/java">
          <property name="constructorBased" value="true"/>
   <property name="enableSubPackages" value="false"/>
           <property name="immutable" value="false"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="${jdbc.mapper.package}" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>

        <javaClientGenerator targetPackage="${jdbc.mapper.package}" targetProject="src/main/java" type="XMLMAPPER">
            <property name="enableSubPackages" value="false"/>

            <property name="exampleMethodVisibility" value=""/>

            <property name="methodNameCalculator" value=""/>
            <!--為生成的介面新增父介面  -->
            <property name="rootInterface" value=""/>

        </javaClientGenerator>
        <table schema="" tableName="%">
        </table>
    </context>
</generatorConfiguration>

3.執行mvn命令

mvn mybatis-generator:generate

到此就可以生成mapper檔案以及xml,在這裡提及一下,在IDEA工具中,如果將xml生成在java目錄下是會報錯的,必須生成在resource目錄中,如果不想生成在resource中
則可以在maven中配置資源目錄用來識別xml

<resources>
    <resource>
        <directory>src/main/java</directory>
        <includes>
            <include>**/*.xml</include>
        </includes>
    </resource>
    <!--此處如果不配做resource目錄,則執行其他maven命令時,maven將不會識別resource中的配置檔案-->
    <resource>
        <directory>src/main/resources</directory>
    </resource>
</resources>

4.在springboot的配置檔案中配置

mybatis:
  type-aliases-package: com.spring.demo.entity
  mapper-locations: classpath:generator/*.xml
  configuration:
    #支援駝峰命名法
    map-underscore-to-camel-case: true
    #開啟延遲載入的開關
    lazy-loading-enabled: true
    #將積極載入改為消極載入即按需載入
    aggressive-lazy-loading: false
    #開啟二級快取
    cache-enabled: true

5.用maven整合通用Mapper,分頁外掛

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.2.3</version>
</dependency>
<!--通用Mapper外掛-->
<dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper-spring-boot-starter</artifactId>
    <version>1.1.5</version>
</dependency>

使用這兩個包則可以去掉mybatis的依賴,這兩個包中已經包含了mybatis的依賴

6.新建MyBatisConfig用來配置分頁外掛

@Configuration
public class MyBatisConfig{

    @Bean
    public PageHelper pageHelper(){
        PageHelper pageHelper = new PageHelper();
        //新增配置,也可以指定檔案路徑
        Properties p = new Properties();
        p.setProperty("offsetAsPageNum", "true");
        p.setProperty("rowBoundsWithCount", "true");
        p.setProperty("reasonable", "true");
        pageHelper.setProperties(p);
        return pageHelper;
    }
}

7.如果使用了springboot的熱部署外掛則還需要在入口檔案中將mapper檔案放入
restart啟動器

System.setProperty("restart.include.mapper", "/mapper-[\\\\w-\\\\.]+jar");
System.setProperty("restart.include.pagehelper", "/pagehelper-[\\\\w-\\\\.]+jar");

至此大功告成

相關推薦

SpringBoot整合通用Mapper 外掛 Generator

研究了一天終於實現了在springboot中整合通用Mapper,分頁外掛,和Generator,特此記錄一下 首先是整合Generator,有幾種方式,在這裡使用maven整合 在pom.xml中整合Generator外掛 <plugins

springboot 整合通用Mapper + 外掛

pom依賴如下: <dependency>             <groupId>org.mybatis.spring.boot</groupId>             <artifactId>mybatis-spri

Spring,SpringBoot 整合 MyBatis 的外掛 PageHelper

SPRING BOOT, Spring整合 MyBatis 的分頁外掛 PageHelper 原創   2018-04-03  宗野   Spring Boot    昨天給各位總結了

SpringBoot整合Mybatis及外掛pageHelper和事務

spring事務分類: 1.宣告事務 2.程式設計事務 spring事務原理:AOP技術 環繞通知進行攔截 使用spring事務的注意事項:不要Try。因為要將異常丟擲給外層 Springboot預設整合事務,只要在方法上加上@Transactional註解 pom.xml

SSM綜合專案實戰(TTSC) -- day02 Dubbo註冊中心,通用Mapper,外掛

一、Dubbo的連線方式 1、連線方式介紹         使用Dubbo進行遠端呼叫實現服務互動,它支援多種協議,如Hessian、HTTP、RMI、Memcached、Redis等等。由於Dubbo將這些協議的實現進行了封裝了,無論是服務端(開發服務)還是客戶端(呼叫服

SpringBoot整合MyBatis的外掛PageHelper

來源:http://www.cnblogs.com/1315925303zxz/p/7364552.html 昨天給各位總結了本人學習springboot整合mybatis第一階段的一些學習心得和原始碼,主要就算是敲了一下SpringBoot的門兒,希望能給各位的入門

springboot整合mybatis(generator自動生成程式碼)

generator自動生成程式碼 1:匯入外掛 <!-- mybatis generator 自動生成程式碼外掛 --> <plugin> <groupId>org.mybatis.generator</groupI

SpringBoot整合通用Mapper以及Pagehelper外掛

前言最近公司在用的技術,是國內的大神寫的Mybatis外掛,我自己也嘗試搭了一個小demo,搭起來也不復雜,但也有一些坑要注意一下首先介紹一下這兩項技術:Mapper與Pagehelper,Mapper:通用Mapper都可以極大的方便開發人員。可以隨意的按照自己的需要選擇通

spring-boot 整合mybatis的外掛PageHelper和Generator (番外)

分頁外掛PageHelper 新增maven依賴 根據上面地址中的說明,只需要新增如下依賴,並且可以不再mybatis的依賴 <!--分頁外掛--> <dependency> <groupId>com.github.pag

spring-boot 整合mybatis的外掛PageHelper和Generator

原文地址:http://blog.csdn.net/zl18310999566/article/details/54097273 分頁外掛PageHelper 新增maven依賴 根據上面地址中的說明,只需要新增如下依賴,並且可以不再myba

Springboot整合Mybatis 之插件使用

-- 插件 pri git AS set PE AC 一次 1: 引入jar包 <!-- 引入MyBatis分頁插件--> <dependency> <groupId>com.github.pagehelper</group

Springboot整合通用mapper、XML、service《spring boot學習五》

1. springmvc之mapper.xml的痛 ​ 一般情況下都是一個類寫一個xml或者說即使N個類共用一個XML,其實對於開發者的工作量也是很大的,前期倒沒有什麼,因為可以用自動生成工具來生成,但是後期,如果要新增什麼欄位或者修改欄位的話,對於我們來說真的太噁心了 ​ 所以

spring-boot 整合mybatis的外掛PageHelper版本問題

Pagehelper 5.0.0及以上版本。使用的是這個類Pagehelper,我們在專案中可以這樣寫: PageInterceptor pageHelper = new PageInterceptor(); properties.setProperty(“helperDialect”, “

SpringBoot 整合 Elasticsearch深度查詢

es 查詢共有4種查詢型別 QUERY_AND_FETCH:     主節點將查詢請求分發到所有的分片中,各個分片按照自己的查詢規則即詞頻文件頻率進行打分排序,然後將結果返回給主節點,主節點對所有資料進行彙總排序然後再返回給客戶端,此種方式只需要和es互動一次。       這種查詢方式存在資料量和排序問題,

springboot整合html之功能實現

說不清楚,直接上程式碼。和展示效果:前臺:<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"      xmlns:sec

springBoot整合myBatis後臺+bootstrapTable展示

1.配置mybatis後臺分頁外掛後臺sql當包含List語句自動進行後臺分頁攔截操作2.PagePlugin編寫package com.javon.boot.util; import java.lang.reflect.Field; import java.sql.Con

Springboot整合mybatis及查詢、定時任務)

整了一整天,看了一位前輩的部落格,在此基礎上加上本人的理解及創作,哪位前輩忘記了,望諒解!不多說,直接上程式碼。 以上是專案的整體結構,下面是pom.xml檔案資訊:<project xmlns="http://maven.apache.org/POM/4.0.0"

Spring Boot整合MyBatis與外掛

1.MyBatisConfig.java @Configuration @EnableTransactionManagement public class MyBatisConfig impleme

SpringBoot2.0整合MyBatis的外掛PageHelper

PageHelper是MyBatis的一款分頁外掛,支援常見的 12 種資料庫,如Oracle,MySql,MariaDB,SQLite,DB2,PostgreSQL,SqlServer 等,專案

spring+Mybatis+通用mapper+助手+restful風格的編寫使用案例

一、基本環境 IDE:Eclipse Java EE IDE for Web Developers Version: Neon Release (4.6.0) JDK:1.8 Mysql:mysql-5.6.24 maven:maven3.3.9 Tomcat:tomcat