package com.educoder.savedata; import java.io.InputStream; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.apache.commons.lang3.time.FastDateFormat; import org.apache.hadoop.hbase.client.Put; import org.apache.hadoop.hbase.util.Bytes; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; import com.educoder.util.HbaseUtil; public class SaveData { public static void SaveBicycleData() throws Exception { HbaseUtil.createTable("t_shared_bicycle", "info"); InputStream resourceAsStream = SaveData.class.getClassLoader().getResourceAsStream("dataResources.xls"); Workbook workbook = WorkbookFactory.create(resourceAsStream); Sheet sheet = workbook.getSheetAt(0); int rows =sheet.getPhysicalNumberOfRows(); Listputs = new ArrayList (); for (int n =1; n< rows; n++) { try { Row row = sheet.getRow(n); DecimalFormat formatter1 = new DecimalFormat("########"); String trip_id = formatter1.format(row.getCell(0).getNumericCellValue()); Put put = new Put(Bytes.toBytes(trip_id)); byte[] family = Bytes.toBytes("info"); FastDateFormat instance = FastDateFormat.getInstance("MM/dd/yyyy HH:mm"); String beginTimevalue = row.getCell(1).getStringCellValue(); Date parse = instance.parse(beginTimevalue); put.addColumn(family, Bytes.toBytes("beginTime"),Bytes.toBytes(String.valueOf(parse.getTime()))); String endTimevalue = row.getCell(2).getStringCellValue(); Date parse2 = instance.parse(endTimevalue); put.addColumn(family, Bytes.toBytes("endTime"), Bytes.toBytes(String.valueOf(parse2.getTime()))); int bicycleId = (int)row.getCell(3).getNumericCellValue(); put.addColumn(family, Bytes.toBytes("bicycleId"),Bytes.toBytes(String.valueOf(bicycleId))); String departure = row.getCell(4).getStringCellValue(); put.addColumn(family, Bytes.toBytes("departure"),Bytes.toBytes(departure)); String destination = row.getCell(5).getStringCellValue(); put.addColumn(family, Bytes.toBytes("destination"),Bytes.toBytes(destination)); String city = row.getCell(6).getStringCellValue(); put.addColumn(family, Bytes.toBytes("city"),Bytes.toBytes(city)); if (destination.equals(city)|| departure.equals(destination)) { continue; } DecimalFormat formatter2 = new DecimalFormat("###.######"); String start_longitude = formatter2.format(row.getCell(7).getNumericCellValue()); put.addColumn(family, Bytes.toBytes("start_longitude"),Bytes.toBytes(String.valueOf(start_longitude))); String start_latitude = formatter2.format(row.getCell(8).getNumericCellValue()); put.addColumn(family, Bytes.toBytes("start_latitude"),Bytes.toBytes(String.valueOf(start_latitude))); String stop_longitude = formatter2.format(row.getCell(9).getNumericCellValue()); put.addColumn(family, Bytes.toBytes("stop_longitude"),Bytes.toBytes(String.valueOf(stop_longitude))); String stop_latitude = formatter2.format(row.getCell(10).getNumericCellValue()); put.addColumn(family, Bytes.toBytes("stop_latitude"), Bytes.toBytes(String.valueOf(stop_latitude))); puts.add(put); } catch (Exception e) { } } HbaseUtil.putByTable("t_shared_bicycle",puts); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)