Version 8.0.31 is the latest General Availability release of the 8.0 series of MySQL Connector/J. It is suitable for use with MySQL Server versions 8.0 and 5.7. It supports the Java Database Connectivity (JDBC) 4.2 API, and implements the X DevAPI.
-
Important Change: To comply with proper naming guidelines, the Maven groupId and artifactId for Connector/J have been changed to the following starting with this release:
groupId:
com.mysql
artifactId:
mysql-connector-j
The old groupId and artifactId can still be used for linking the Connector/J library, but they will point to a Maven relocation POM, redirecting users to the new coordinates. Please switch to the new coordinates as soon as possible, as the old coordinates could be discontinued anytime without notice. See Installing Connector/J Using Maven.
Also, to go with these changes, the
.jar
library for Connector/J has been renamed tomysql-connector-j-x.y.z
for all channels of distribution by Oracle, not just the Maven repository. (WL #15259) -
Before release 8.0.29, Connector/J always interpolated byte arrays as hexadecimal literals when obtaining a prepared statement's string representation by the
toString()
method. Since 8.0.29, all byte array values were displayed as** BYTE ARRAY DATA **
when converted to strings. The same is also true for null values.To allow different ways to display byte array data and null values, a new connection property,
maxByteArrayAsHex
, has been introduced: byte arrays shorter than the value ofmaxByteArrayAsHex
are now shown as hexadecimal literals like before release 8.0.29. Any byte arrays longer than this value are interpolated generically as** BYTE ARRAY DATA **
. (Bug #107222, Bug #34150112)
X DevAPI: When parsing a string into a JSON string, some escape character sequences were not parsed properly, causing the Server to throw a
com.mysql.cj.exceptions.WrongArgumentException
when receiving the JSON value. This fix ensures that escape sequences are handled properly. (Bug #34529014)X DevAPI: When using the modify() method on JSON documents, any backslashes inside a literal to be used for the modification were lost. This fix corrects the mistakes in the expression parser that caused the issue. (Bug #33637993)
Executing a
PreparedStatment
after applyingsetFetchSize(0)
on it caused anArrayIndexOutOfBoundsException
. (Bug #104753, Bug #33286177)Due to some old limitations, when used with Java applets, Connector/J found out the default character set on a system by various workarounds like reading the system property
file.encoding
, using anOutpuStreamWriter
, etc. With this fix, Connector/J now usesCharset.defaultCharset()
, the standard method for the purpose. (Bug #67828, Bug #15967406)