### Question:
HbaseSQLHelper { public static List<Configuration> split(HbaseSQLReaderConfig readerConfig) { PhoenixInputFormat inputFormat = new PhoenixInputFormat<PhoenixRecordWritable>(); org.apache.hadoop.conf.Configuration conf = generatePhoenixConf(readerConfig); JobID jobId = new JobID(Key.MOCK_JOBID_IDENTIFIER, Key.MOCK_JOBID); JobContextImpl jobContext = new JobContextImpl(conf, jobId); List<Configuration> resultConfigurations = new ArrayList<Configuration>(); List<InputSplit> rawSplits = null; try { rawSplits = inputFormat.getSplits(jobContext); LOG.info("split size is " + rawSplits.size()); for (InputSplit split : rawSplits) { Configuration cfg = readerConfig.getOriginalConfig().clone(); byte[] splitSer = HadoopSerializationUtil.serialize((PhoenixInputSplit) split); String splitBase64Str = org.apache.commons.codec.binary.Base64.encodeBase64String(splitSer); cfg.set(Key.SPLIT_KEY, splitBase64Str); resultConfigurations.add(cfg); } } catch (IOException e) { throw DataXException.asDataXException( HbaseSQLReaderErrorCode.GET_PHOENIX_SPLITS_ERROR, "获取表的split信息时出现了异常，请检查hbase集群服务是否正常," + e.getMessage(), e); } catch (InterruptedException e) { throw DataXException.asDataXException( HbaseSQLReaderErrorCode.GET_PHOENIX_SPLITS_ERROR, "获取表的split信息时被中断，请重试，若还有问题请联系datax管理员," + e.getMessage(), e); } return resultConfigurations; }  static org.apache.hadoop.conf.Configuration generatePhoenixConf(HbaseSQLReaderConfig readerConfig); static List<String> getPColumnNames(String connectionString, String tableName); static List<Configuration> split(HbaseSQLReaderConfig readerConfig); static HbaseSQLReaderConfig parseConfig(Configuration cfg); static Pair<String, String> getHbaseConfig(String hbaseCfgString);  }### Answer:
@Test public void testSplit() { Configuration config = Configuration.from(jsonStr); HbaseSQLReaderConfig readerConfig = HbaseSQLHelper.parseConfig(config); List<Configuration> splits = HbaseSQLHelper.split(readerConfig); System.out.println("split size = " + splits.size()); }