Plugin-Mybatis-1.0.2

MybatisPlugin

License

License

Categories

Categories

MyBatis Data ORM
GroupId

GroupId

com.github.link-kou
ArtifactId

ArtifactId

mybatis
Last Version

Last Version

1.0.2
Release Date

Release Date

Type

Type

jar
Description

Description

Plugin-Mybatis-1.0.2
MybatisPlugin
Project URL

Project URL

https://github.com/Link-Kou/Plugin-Mybatis
Project Organization

Project Organization

Link-Kou
Source Code Management

Source Code Management

https://github.com/Link-Kou/Plugin-Mybatis

Download mybatis

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.link-kou/mybatis/ -->
<dependency>
    <groupId>com.github.link-kou</groupId>
    <artifactId>mybatis</artifactId>
    <version>1.0.2</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.link-kou/mybatis/
implementation 'com.github.link-kou:mybatis:1.0.2'
// https://jarcasting.com/artifacts/com.github.link-kou/mybatis/
implementation ("com.github.link-kou:mybatis:1.0.2")
'com.github.link-kou:mybatis:jar:1.0.2'
<dependency org="com.github.link-kou" name="mybatis" rev="1.0.2">
  <artifact name="mybatis" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.link-kou', module='mybatis', version='1.0.2')
)
libraryDependencies += "com.github.link-kou" % "mybatis" % "1.0.2"
[com.github.link-kou/mybatis "1.0.2"]

Dependencies

compile (5)

Group / Artifact Type Version
org.mybatis : mybatis Optional jar 3.5.4
com.github.link-kou : config-property Optional jar 1.0.1
com.github.link-kou : gson Optional jar 1.0.4
com.github.link-kou : annotation-validate Optional jar 1.0.2
com.github.jsqlparser : jsqlparser jar 3.1

Project Modules

There are no modules declared in this project.

Plugin-Mybatis

Plugin-Mybatis 能做什么?

基于Plugin-Mybatis实现以下功能

  • 辅助分页(为什么不能更傻瓜式,因为你会碰到无法想象的关联以及一些子查询的时候,你会发现插件真的就是傻瓜。)
  • 辅助枚举的装换
  • 辅助乐观锁(只支持时间方式)

使用环境

JAVA    >  1.8
Maven   >  3.X
Mybatis >  3.X

Maven仓库

<dependency>
  <groupId>com.github.link-kou</groupId>
  <artifactId>mybatis</artifactId>
  <version>1.0.2</version>
</dependency>

我为什么不用MyBatis-Plus聊一下我的观点

要绝对肯定mybatis-plus的优秀之处

我的原因

  • 以辅助为目的,相对减少代码量。
  • mybatis已经很强大了。几乎用不到mybatis-plus的任何功能。
  • XML一定要写,而且是必须写。这个是强制的,没有任何人可以对此条发起挑战。很简单的一个原因解耦和维护
  • 我严重反对代码式的SQL查询。方便是方便。维护真的是坑上加坑。开发一时爽,一直开发一直爽,维护火葬场。

我反对代码式的Sql查询,严重拒绝


我在工作的早年,经常性碰到resultMap到底写不写的问题。多数情况下都直接上实体,因为方便和感觉resultMap作用性不大。
时间久了,项目经验多了。发现你不可能要求个个开发都是无敌存在。
1: 你会发现多张表都有一个Name字段。在LeftJoin的时候,你的实体默默多创建了一个。
2: 数据库实体被滥用,导致多个地方使用。想改都改不动。人生都已经没有乐趣了
3: 数据库字段不能直接返回输出到前端去,一个都不行。

示列

<!-- myBatis文件 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource"/>
    <property name="mapperLocations" value="classpath*:com/mybatis/test/**/mapper/**/*Mapper.xml"/>
    <property name="typeHandlers">
        <array>
            <bean class="com.linkkou.mybatis.mybatisplugins.TypeHandlers.AutoGsonEnumTypeHandler"/>
        </array>
    </property>
    <property name="plugins">
        <array>
            <bean class="com.linkkou.mybatis.mybatisplugins.QueryPaginatorInterceptor">
                <property name="paginatorType" value="true"/>
            </bean>
        </array>
    </property>
</bean>

Versions

Version
1.0.2
1.0.1
1.0.0