RFR: 8294361: Cleanup usages of StringBuffer in SQLOutputImpl

Andrey Turbanov aturbanov at openjdk.org
Mon Sep 26 16:12:19 UTC 2022


On Mon, 26 Sep 2022 14:53:24 GMT, Roger Riggs <rriggs at openjdk.org> wrote:

>> There a few unnecessary usages of StringBuffer in SQLOutputImpl class.
>> All of them create StringBuffer from single character and then concatenate with String. Instead of this, we can concatenate character directly.
>
> src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SQLOutputImpl.java line 328:
> 
>> 326:         try {
>> 327:             int i;
>> 328:             while ((i = bufReader.read()) != -1) {
> 
> Is the single character read really necessary?
> BufferedReader.readLine() returns null on EOF.
> It seems plausable that only the readLine and writeString are needed in the loop.
> 
> Similarly, for the read loops below for InputStreams and binary stream.
> The BufferedReader and readline can be used for the binary streams by constructing with the ASCII Charset.

If this single character is `\n`, then direct replacing with `readLine` would change behavior of the method.

-------------

PR: https://git.openjdk.org/jdk/pull/10320


More information about the core-libs-dev mailing list