本文整理匯總了Java中org.bbreak.excella.core.SheetData.get方法的典型用法代碼示例。如果您正苦於以下問題:Java SheetData.get方法的具體用法?Java SheetData.get怎麽用?Java SheetData.get使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.bbreak.excella.core.SheetData
的用法示例。
在下文中一共展示了SheetData.get方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: postParse
import org.bbreak.excella.core.SheetData; //導入方法依賴的package包/類
/**
* 解析後処理<BR>
* 設定情報に基づき、データをオブジェクトに変換し、<BR>
* 結果をリストに入れて、SheetDataにセットする<BR>
*
* @param sheet 対象シート
* @param sheetParser 対象シートパーサ
* @param sheetData 解析結果シートデータ
*/
@SuppressWarnings( "unchecked")
public void postParse( Sheet sheet, SheetParser sheetParser, SheetData sheetData) throws ParseException {
// 結果オブジェクトのリスト
List<Object> results = new ArrayList<Object>();
// 対象シートにSheetToJavaParserが存在するか
List<TagParser<?>> tagParsers = sheetParser.getTagParsers();
// 処理後不要になるSheetToJavaSettingParserの
// データを判別するタグのリスト
List<String> removeTags = new ArrayList<String>();
// 処理をするタグの一覧を生成
List<String> targetTags = new ArrayList<String>();
for ( TagParser<?> tagParser : tagParsers) {
// SheetToJavaParserのタグ
if ( tagParser instanceof SheetToJavaParser) {
targetTags.add( tagParser.getTag());
}
// SheetToJavaSettingParserのタグ
if ( tagParser instanceof SheetToJavaSettingParser) {
removeTags.add( tagParser.getTag());
}
}
// ワークブック取得
Workbook workbook = sheet.getWorkbook();
// 処理対象のタグでループ
for ( String tag : targetTags) {
List<SheetToJavaParseInfo> sheetInfoList = ( List<SheetToJavaParseInfo>) sheetData.get( tag);
if ( sheetInfoList == null) {
continue;
}
// 設定情報(シート)単位でループ
for ( SheetToJavaParseInfo sheetInfo : sheetInfoList) {
List<SheetToJavaSettingInfo> allColumnInfoList = ( List<SheetToJavaSettingInfo>) sheetData.get( sheetInfo.getSettingTagName());
// 今回処理対象シート分の設定を取得
List<SheetToJavaSettingInfo> targetColumnInfoList = new ArrayList<SheetToJavaSettingInfo>();
for ( SheetToJavaSettingInfo columnInfo : allColumnInfoList) {
if ( columnInfo.getSheetName().equals( sheetInfo.getSheetName())) {
targetColumnInfoList.add( columnInfo);
}
}
// 対象シートデータの読み込み
Sheet targetSheet = workbook.getSheet( sheetInfo.getSheetName());
if ( targetSheet == null) {
throw new ParseException( sheetInfo.getSheetNameCell(), "シート[" + sheetInfo.getSheetName() + "]は存在しません");
}
results.addAll( parseTargetSheet( targetSheet, sheetInfo, targetColumnInfoList));
}
// sheetDataに結果を格納
sheetData.put( tag, results);
}
// 処理後に不要になるデータの削除
for ( String removeTag : removeTags) {
sheetData.remove( removeTag);
}
}
示例2: postParse
import org.bbreak.excella.core.SheetData; //導入方法依賴的package包/類
/**
* 解析後処理<BR>
* 設定情報に基づき、データをSql文字列に変換し、<BR>
* 結果をリストに入れて、SheetDataにセットする。<BR>
*
* @param sheet 対象シート
* @param sheetParser 対象シートパーサ
* @param sheetData 解析結果シートデータ
*/
@SuppressWarnings( "unchecked")
public void postParse( Sheet sheet, SheetParser sheetParser, SheetData sheetData) throws ParseException {
// 結果オブジェクトのリスト
List<Object> results = new ArrayList<Object>();
// 対象シートにSheetToSqlParserが存在するか
List<TagParser<?>> tagParsers = sheetParser.getTagParsers();
// 処理後不要になるSheetToJavaSettingParserの
// データを判別するタグのリスト
List<String> removeTags = new ArrayList<String>();
// 処理をするタグの一覧を作成
List<String> targetTags = new ArrayList<String>();
for ( TagParser<?> tagParser : tagParsers) {
// SheetToSqlParserのタグ
if ( tagParser instanceof SheetToSqlParser) {
targetTags.add( tagParser.getTag());
}
// SheetToSqlSettingParserのタグ
if ( tagParser instanceof SheetToSqlSettingParser) {
removeTags.add( tagParser.getTag());
}
}
// ワークブックの取得
Workbook workbook = sheet.getWorkbook();
// 処理対象のタグでループ
for ( String tag : targetTags) {
List<SheetToSqlParseInfo> sheetInfoList = ( List<SheetToSqlParseInfo>) sheetData.get( tag);
if ( sheetInfoList == null) {
continue;
}
// 設定情報(シート)単位でループ
for ( SheetToSqlParseInfo sheetInfo : sheetInfoList) {
List<SheetToSqlSettingInfo> allColumnInfoList = ( List<SheetToSqlSettingInfo>) sheetData.get( sheetInfo.getSettingTagName());
// 今回処理対象シート分の設定を取得
List<SheetToSqlSettingInfo> targetColumnInfoList = new ArrayList<SheetToSqlSettingInfo>();
for ( SheetToSqlSettingInfo columnInfo : allColumnInfoList) {
if ( columnInfo.getSheetName().equals( sheetInfo.getSheetName())) {
targetColumnInfoList.add( columnInfo);
}
}
// 対象シートデータの読み込み
Sheet targetSheet = workbook.getSheet( sheetInfo.getSheetName());
if ( targetSheet == null) {
throw new ParseException( "シート[" + sheetInfo.getSheetName() + "]は存在しません");
}
results.addAll( parseTargetSheet( targetSheet, sheetInfo, targetColumnInfoList));
}
// sheetDataに結果を格納
sheetData.put( tag, results);
}
// 処理後に不要になるデータの削除
for ( String removeTag : removeTags) {
sheetData.remove( removeTag);
}
}
示例3: main
import org.bbreak.excella.core.SheetData; //導入方法依賴的package包/類
@SuppressWarnings( {"unchecked", "unused" })
public static void main( String[] args) throws Exception {
// クラスの場所から読み込むファイルのパスを取得
String filename = "移行データサンプル.xls";
URL url = UserOrgDataTransExecuter.class.getResource( filename);
String filePath = URLDecoder.decode( url.getFile(), "UTF-8");
// プロセッサ生成
TransProcessor processor = new TransProcessor( filePath);
// エラーハンドラ設定
processor.setErrorHandler( new DebugErrorHandler());
// ブックエクスポータ追加
processor.addBookExporter( new ConsoleExporter());
// プロセス実行
BookData bookData = processor.processBook();
// シート名リストの取得
List<String> sheetNames = processor.getSheetNames();
// シート単位でループ
for ( String sheetName : sheetNames) {
if ( !sheetName.startsWith( TransProcessor.COMMENT_PREFIX)) {
// コメントアウトされていないシートの場合
// シートデータの取得
SheetData sheetData = bookData.getSheetData( sheetName);
// タグ名リストの取得
List<String> tagNames = sheetData.getKeyList();
// タグ名リストでループ
for ( String tagName : tagNames) {
if ( processor.isDefaultSqlTag( tagName)) {
// 結果がSQLの場合
List<String> sqlList = ( List<String>) sheetData.get( tagName);
/* SQLの実行処理を記述 */
} else {
// それ以外の場合
List<Object> entityList = ( List<Object>) sheetData.get( tagName);
/* エンティティの処理を記述 */
}
}
}
}
}