Skip to content

Releases: mybatis/mybatis-3

mybatis-3.4.3

07 Apr 19:23
Compare
Choose a tag to compare

Enhancements:

  • Allow registering a type handler for a common interface of enums. #947
  • Share Jdbc3KeyGenerator and NoKeyGenerator instances #882
  • Building UPDATE JOIN statement by SQL Builder #903

Bug fixes:

  • Failed to find a statement mapped to a super interface #481
  • Default methods support on mappers, does not work for non-public mappers. #905
  • foreignColumns with multiple columns validation error #526
  • Fix wrong registration logic for LanguageDriver #914
  • A boolean property should be able to have two getters: isX() and getX() #906
  • Possible unexpected auto-mapping #895
  • Excessive memory allocation for primitive arrays in nested resultmaps #927

There should be no backward incompatible change [1].
Follow this link to see the full list of changes.

[1] It is possible that an incorrect result mapping previously worked because of the bug fixed in #895 stops working. Please see #1100 for the details.

mybatis-3.4.2

03 Jan 16:27
Compare
Choose a tag to compare

Here is a list of major enhancements in MyBatis 3.4.2.

  • New option 'returnInstanceForEmptyRow' to control the behavior when a query returns a row with all columuns being null. #800
  • Support 'default methods' on mapper interfaces. #709
  • When no type handler is registered to a class, a type handler registered to its superclass can be used. #859
  • New attributes properties is added to @CacheNamespace. #841
  • New attributes name is added to @CacheNamespaceRef. #842
  • Support the mechanism for initializing a cache after set all properties. #816
  • Allow users to set default value in placeholders. #852
  • Auto-detecting type handlers newly added in version 1.0.2 of TypeHandlers-JSR310. #727 #878

Although it may be rare, the following changes could affect existing solutions.

  • The default value of aggressiveLazyLoading is changed to false. #825
  • Raise a exception when keyProperty is not found. #782

Follow this link to see the full list of changes.

mybatis-3.4.1

26 Jun 05:12
Compare
Choose a tag to compare

This release includes four user visible enhancements

  • Allow referencing parameters by their declared names when compiled with Java 8 -parameters option. #549
  • Added auto-detection of Year/MonthTypeHandler added in mybatis-typehandlers-jsr310 1.0.1. #646
  • @Select can now return an array of objects. #669
  • Allow specifying custom reflectorFactory in XML config. #657

and six bug fixes.

  • Circularly referenced resultMap was filled with ancestor object even when columnPrefix was specified. #215
  • Select statement with @Param couldn't be used as a nested select statement of association. #649
  • RuntimeException was thrown at the startup on IBM WebSphere Application Server 8.5.5.9. #706
  • Couldn't use Cursor as the return type of @Select statements. #661
  • Couldn't use RowBounds as a parameter of select statement whose return type is Cursor. #667
  • NullPointerException was thrown when used with Kylin JDBC driver. #699

Here is the complete list of changes.

mybatis-3.4.0

19 Apr 14:10
Compare
Choose a tag to compare

MyBatis 3.4.0 with the following main features:

  • New Cursor List method in SqlSession.
  • Inherit Spring timeout in transactions.
  • Better support for generic types.
  • Out-of-the-box support new Date and Time API (JSR-310) classes added in Java 8.

Note that there are changes that may break existing code.

  • New method getTimeout() in the Transaction interface. If you implemented your own transaction adapter you will need to implement this method at least with a "return null"
  • @options( flushCache ) now takes enum values (DEFAULT/TRUE/FALSE) instead of boolean.
  • StatementHandler#prepare(Connection) has been changed to StatementHandler#prepare(Connection,Integer) given that now it gets the transaction timeout.
  • SqlSession#selectCursor, Executor#queryCursor, ResultSetHandler#handleCursorResultSets and StatementHandler#queryCursor added. You will need to implement methods if you implemented those interfaces already.

See the details at https://github.com/mybatis/mybatis-3/issues?q=milestone%3A3.4.0+is%3Aclosed

mybatis-3.3.1

13 Feb 22:19
Compare
Choose a tag to compare

The first bug fix release for the 3.3.x branch.

See the details at https://github.com/mybatis/mybatis-3/issues?q=milestone%3A3.3.1

mybatis-3.3.0

23 May 23:41
Compare
Choose a tag to compare

Includes two main changes:

  • Ognl has been upgraded to 3.0.11 that is the latest version
  • The default proxy tool is now Javassist and is included inside the mybatis jar

There are some other minor changes and bug fixes. See the details at https://github.com/mybatis/mybatis-3/issues?q=milestone%3A3.3.0

Note that you can still use CGLIB as the proxy factory tool by adding CGLIB to your classpath and setting the MyBatis global parameter as follows:

<settings>
    <setting name="proxyFactory" value="CGLIB"/>
</settings>

mybatis-3.2.8

11 Oct 05:19
Compare
Choose a tag to compare

See the details at https://github.com/mybatis/mybatis-3/issues?q=milestone%3A3.2.8

Yet another bug fix release. Provides 8 minor bug fixes.

mybatis-3.2.7

06 Apr 19:57
Compare
Choose a tag to compare

See the details at https://github.com/mybatis/mybatis-3/issues?milestone=8&state=closed

This release is a hotfix to solve the bug reported in #167 that broke the @one annotation in 3.2.6.

mybatis-3.2.6

24 Mar 08:06
Compare
Choose a tag to compare

See the details at https://github.com/mybatis/mybatis-3/issues?milestone=6&page=1&state=closed

Provides some new features:

  • Caches nested selects
  • Lazy loading can be enabled only for specific relations
  • Supports returning multiple fields in a select key
  • Some other minor improvements

A note for users who implemented their own caches or 3rd party cache adapters. MyBatis no longer calls Cache#getReadWriteLock(). Any locking needed by the cache should be implemented internally by the cache. So in case you coded your own cache make sure it is properly synchronized. See issue #159.

mybatis-3.2.5

15 Feb 06:01
Compare
Choose a tag to compare

See the details at https://github.com/mybatis/mybatis-3/issues?milestone=5&page=1&state=closed

Provides 7 bug fixes, 4 of them are regressions coming from 3.2.3 and 3.2.4.