package com.gh.mygreen.xlsmapper.annotation; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** * セルの列と行を指定して、セルの値をマッピングします。 * <p>インデックス形式の{@link #column()}と{@link #row()}か、アドレス形式の{@link #address()}のどちらか一方の形式を指定します。 * 両方を指定した場合、{@link #address()}の設定値が優先されます。 * </p> * * * <pre class="highlight"><code class="java"> * {@literal @XlsSheet(name="Users")} * public class SampleSheet { * * // インデックス形式で指定する場合。 * // インデックスは0から始まります。 * {@literal @XlsCell(column=0, row=0)} * private String title; * * // アドレス形式で指定する場合 * {@literal @XlsCell(address="B3")} * private String name; * * } * </code></pre> * * <div class="picture"> * <img src="doc-files/Cell.png"> * <p>概要</p> * </div> * * * * @author Naoki Takezoe * @author T.TSUCHIE */ @Target({ElementType.METHOD, ElementType.FIELD}) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface XlsCell { /** * セルの行番号を指定します。0から始まります。 * {@link #column()}属性とセットで指定します。 */ int row() default -1; /** * セルの列番号を指定します。0から始まります。 * {@link #row()}属性とセットで指定します。 */ int column() default -1; /** * セルのアドレスを指定します。'A1'などのようにシートのアドレスで指定します。 * <p>{@link #row()}、{@link #column()}属性のどちらか一方を指定します。 * @return */ String address() default ""; }