Releases: mybatis/mybatis-dynamic-sql
MyBatis dynamic SQL Version 1.1.3
This release has three major enhancements:
- Added support for multiple row inserts. This allows you to insert multiple rows in a single statement, rather than having to code a batch. This is useful for a small number of rows, but we still recommend using a batch for a large number of rows. Note that multiple row inserts will not render properly for Spring so they are supported with MyBatis only.
- Added utility functions and other changes to allow wider use of lambdas for completing SQL statements. This is particularly noticeable with WHERE clauses - WHERE clauses can now be supplied via lambda rather than by method chaining. Ultimately this will simplify and standardize the code created by MyBatis Generator, but it has benefits in all use cases. As a result of this change, several older methods have been deprecated and will be removed in a future release. There is a corresponding change soon to be released in MyBatis Generator.
- Kotlin Support! Another benefit of more fully embracing lambdas is that the new usage patterns start to look a bit more like Kotlin. So we have added a Kotlin DSL and extension methods for both MyBatis and Spring runtimes. This should be considered an initial phase of Kotlin support - there is probably more to come. We would appreciate any feedback from Kotlin users regarding this DSL and what future Kotlin support should look like.
For information about the new lambda based usage pattern, see this page: https://mybatis.org/mybatis-dynamic-sql/docs/mybatis3.html
For information about Kotlin support when using MyBatis, see this page: https://mybatis.org/mybatis-dynamic-sql/docs/kotlinMyBatis3.html
For information about Kotlin support when using Spring JDBC Template, see this page: https://mybatis.org/mybatis-dynamic-sql/docs/kotlinSpring.html
The full list of changes can be viewed here:
https://github.com/mybatis/mybatis-dynamic-sql/issues?q=is%3Aclosed+milestone%3A1.1.3
All artifacts are available in Maven central under these coordinates:
<dependency>
<groupId>org.mybatis.dynamic-sql</groupId>
<artifactId>mybatis-dynamic-sql</artifactId>
<version>1.1.3</version>
</dependency>
MyBatis Dynamic SQL 1.1.2
This release includes several enhancements related to increasing user flexibility including:
- Database catalogs and schemas can now be supplied at runtime. The enables code to be responsive to different environments, or enabling certain types of sharding
- The public API for
List
based conditions has been changed to supportCollection
instead ofList
- The library now supports "fetch first" based paging in addition to "limit and offset". We believe "fetch first" is more standard and supported by more databases.
- Many enhancements related to supporting more complex query scenarios (see below)
By far, the most important enhancements are related to making it easier to create very dynamic select statements with complex where clauses. There is a new page in the online documentation showing the new capabilities here: http://www.mybatis.org/mybatis-dynamic-sql/docs/complexQueries.html
The full list of changes can be viewed here:
https://github.com/mybatis/mybatis-dynamic-sql/issues?q=is%3Aclosed+milestone%3A1.1.2
All artifacts are available in Maven central under these coordinates:
<dependency>
<groupId>org.mybatis.dynamic-sql</groupId>
<artifactId>mybatis-dynamic-sql</artifactId>
<version>1.1.2</version>
</dependency>
MyBatis Dynamic SQL 1.1.1
This release includes many enhancements and one small bug fix.
The most important enhancements are as follows:
- Added support for limit and offset to the select statement. This support will only work if the underlying database supports limit and offset so use with caution. Many databases do support limit and offset.
- Added utility classes to support MyBatis Spring Batch integration. See this page for details: http://www.mybatis.org/mybatis-dynamic-sql/docs/springBatch.html
- Added much more robust support for optional conditions. All conditions can now be optionally rendered with lambdas - so users can have complete control over how conditions get rendered into the final SQL. See this page for details: http://www.mybatis.org/mybatis-dynamic-sql/docs/conditions.html
The full list of changes can be viewed here:
https://github.com/mybatis/mybatis-dynamic-sql/issues?q=is%3Aclosed+milestone%3A1.1.1
All artifacts are available in Maven central under these coordinates:
<dependency>
<groupId>org.mybatis.dynamic-sql</groupId>
<artifactId>mybatis-dynamic-sql</artifactId>
<version>1.1.1</version>
</dependency>
MyBatis Dynamic SQL 1.1.0
This release includes many enhancements and two bug fixes.
The most important enhancement is the introduction of optional conditionals. They allow a where clause to be created that varies based on the value of the input parameters. See the following page for details and examples:
http://www.mybatis.org/mybatis-dynamic-sql/docs/conditions.html
The full list of changes can be viewed here:
https://github.com/mybatis/mybatis-dynamic-sql/issues?q=is%3Aclosed+milestone%3A1.1.0
All artifacts are available in Maven central under these coordinates:
<dependency>
<groupId>org.mybatis.dynamic-sql</groupId>
<artifactId>mybatis-dynamic-sql</artifactId>
<version>1.1.0</version>
</dependency>
MyBatis Dynamic SQL 1.0.0
First release of MyBatis Dynamic SQL - an SQL generator/templating utility for MyBatis and Spring JDBC templates.
Available in maven central here:
<dependency>
<groupId>org.mybatis.dynamic-sql</groupId>
<artifactId>mybatis-dynamic-sql</artifactId>
<version>1.0.0</version>
</dependency>