// Path: src/main/java/org/fintx/lang/Encoding.java
// public enum Encoding implements Codeable<String> {
//     UTF_8("UTF-8"), GBK("GBK"), GB18030("GB18030");
//     private String code;
// 
//     private Encoding(String code) {
//         this.code = code;
//     }
// 
//     @Override
//     public String getCode() {
//         // TODO Auto-generated method stub
//         return code;
//     }
// }


import org.fintx.lang.Encoding;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.sql.SQLException;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;

            try {
                br = new BufferedReader(clob.getCharacterStream());
                String line = null;
                while (null != (line = br.readLine())) {
                    sb.append(line);
                }
            } catch (SQLException | IOException e) {
                throw new ReflectiveOperationException(e.getMessage());
            }
            return sb.toString();
        } else if (typeName.equals("java.sql.Blob")) {
            java.sql.Blob blob = (java.sql.Blob) obj;
            StringBuilder sb = new StringBuilder();
            BufferedReader br;
            try {
                br = new BufferedReader(new InputStreamReader(blob.getBinaryStream()));
                String line = null;
                while (null != (line = br.readLine())) {
                    sb.append(line);
                }
            } catch (SQLException | IOException e) {
                throw new ReflectiveOperationException(e.getMessage());
            }
            return sb.toString();
        } else {
            throw new ReflectiveOperationException("Unsupport type class name:" + obj.getClass().getName() + " class canonical name:"
                    + obj.getClass().getCanonicalName() + " value:" + String.valueOf(obj));
        }
    }


// Path: src/main/java/org/fintx/lang/Encoding.java
// public enum Encoding implements Codeable<String> {
//     UTF_8("UTF-8"), GBK("GBK"), GB18030("GB18030");
//     private String code;
// 
//     private Encoding(String code) {
//         this.code = code;
//     }
// 
//     @Override
//     public String getCode() {
//         // TODO Auto-generated method stub
//         return code;
//     }
// }


// Path: src/main/java/org/fintx/util/convertor/BaseTypeObjectStringConvertor.java
import org.fintx.lang.Encoding;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.sql.SQLException;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;

            try {
                br = new BufferedReader(clob.getCharacterStream());
                String line = null;
                while (null != (line = br.readLine())) {
                    sb.append(line);
                }
            } catch (SQLException | IOException e) {
                throw new ReflectiveOperationException(e.getMessage());
            }
            return sb.toString();
        } else if (typeName.equals("java.sql.Blob")) {
            java.sql.Blob blob = (java.sql.Blob) obj;
            StringBuilder sb = new StringBuilder();
            BufferedReader br;
            try {
                br = new BufferedReader(new InputStreamReader(blob.getBinaryStream()));
                String line = null;
                while (null != (line = br.readLine())) {
                    sb.append(line);
                }
            } catch (SQLException | IOException e) {
                throw new ReflectiveOperationException(e.getMessage());
            }
            return sb.toString();
        } else {
            throw new ReflectiveOperationException("Unsupport type class name:" + obj.getClass().getName() + " class canonical name:"
                    + obj.getClass().getCanonicalName() + " value:" + String.valueOf(obj));
        }
    }


    @SuppressWarnings("unchecked")
