Skip to content
Snippets Groups Projects
Unverified Commit 42921342 authored by 钟正涛's avatar 钟正涛 Committed by GitHub
Browse files

feature: support jdbc type nclob (#3191)

parent 7ea73997
No related branches found
No related tags found
No related merge requests found
......@@ -39,7 +39,7 @@ public class BeanUtils {
}
Field[] fields = o.getClass().getDeclaredFields();
StringBuffer buffer = new StringBuffer();
StringBuilder buffer = new StringBuilder();
buffer.append("[");
for (Field field : fields) {
Object val = null;
......
......@@ -26,11 +26,12 @@ import javax.sql.rowset.serial.SerialRef;
import java.sql.Array;
import java.sql.Blob;
import java.sql.Clob;
import java.sql.JDBCType;
import java.sql.NClob;
import java.sql.Ref;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Types;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
......@@ -199,32 +200,37 @@ public class TableRecords {
field.setType(dataType);
// mysql will not run in this code
// cause mysql does not use java.sql.Blob, java.sql.sql.Clob to process Blob and Clob column
if (dataType == JDBCType.BLOB.getVendorTypeNumber()) {
if (dataType == Types.BLOB) {
Blob blob = resultSet.getBlob(i);
if (blob != null) {
field.setValue(new SerialBlob(blob));
}
} else if (dataType == JDBCType.CLOB.getVendorTypeNumber()) {
} else if (dataType == Types.CLOB) {
Clob clob = resultSet.getClob(i);
if (clob != null) {
field.setValue(new SerialClob(clob));
}
} else if (dataType == JDBCType.ARRAY.getVendorTypeNumber()) {
} else if (dataType == Types.NCLOB) {
NClob object = resultSet.getNClob(i);
if (object != null) {
field.setValue(new SerialClob(object));
}
} else if (dataType == Types.ARRAY) {
Array array = resultSet.getArray(i);
if (array != null) {
field.setValue(new SerialArray(array));
}
} else if (dataType == JDBCType.REF.getVendorTypeNumber()) {
} else if (dataType == Types.REF) {
Ref ref = resultSet.getRef(i);
if (ref != null) {
field.setValue(new SerialRef(ref));
}
} else if (dataType == JDBCType.DATALINK.getVendorTypeNumber()) {
} else if (dataType == Types.DATALINK) {
java.net.URL url = resultSet.getURL(i);
if (url != null) {
field.setValue(new SerialDatalink(url));
}
} else if (dataType == JDBCType.JAVA_OBJECT.getVendorTypeNumber()) {
} else if (dataType == Types.JAVA_OBJECT) {
Object object = resultSet.getObject(i);
if (object != null) {
field.setValue(new SerialJavaObject(object));
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment