Chapter 37

Uploadクラス

kazpgm
kazpgm
2022.01.12に更新

自動作成されたRepositoryクラスを説明する。

商品情報Uploadクラス(ShohinUpload.java)

upload.ShohinUpload.java

package com.kaz01u.demo.upload;

import java.util.Date;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import com.kaz01u.demo.utils.ValidCheck;
import com.kaz01u.demo.validation.CheckFull;
import com.kaz01u.demo.validation.CheckFullStartEndSpace;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

・@Data:対象クラス内のインスタンス変数に対してgetter/setterでアクセスすることを可能とする。
・@NoArgsConstructor:デフォルトコンストラクタを自動生成するため使う。
・@AllArgsConstructor:フィールドに対する初期化値を引数にとるコンストラクタを自動生成するため使う。
・@Component:当クラスをSpringのDIコンテナにbeanとして登録するため使う。

@Data
@NoArgsConstructor
@AllArgsConstructor
@Component
public class ShohinUpload {

・定義エクセルのC,D,G,I,J,L列からUpload クラスが自動作成されている。★01
 但し、登録日時、更新日時はUpload しないので、対象外です。
・@CheckFull、@CheckFullStartEndSpaceなどは、validationクラスChaptersを参照してください。

    @NotBlank(message = "『商品名』は必須入力です")
    @Size(min = 0, max = 50, message = "『商品名』は50桁以下で入力してください")
    @CheckFull(message = "『商品名』は全角で入力してください")
    @CheckFullStartEndSpace(message = "『商品名』の先頭、末尾に全角空白を使用しないでください")
    private String productsname = "";

    //DbELEMENTSでのチェックはControllerで行う
    @NotNull(message = "『業種ID』は必須入力です")
    private Long biztypeCd;

    //DbELEMENTSでのチェックはControllerで行う
    @NotBlank(message = "『大分類』は必須入力です")
    private String categoryCd = "";

    //DbELEMENTSでのチェックはControllerで行う
    @NotBlank(message = "『中分類』は必須入力です")
    private String subcategoryCd = "";

    //DbELEMENTSでのチェックはControllerで行う
    @NotBlank(message = "『小分類』は必須入力です")
    private String extracategoryCd = "";

    @NotBlank(message = "『公開区分』は必須入力です")
    private String openkbn1 = "";

・定義エクセルのI列が固定値エレメント(当クラスでは、公開区分)のとき自動作成されます。★02
・ShohinServiceImpl・registerForShohinUpCsvDoメソッドで当メソッド(shohinUpload.isCheckOpenkbn1())を使用している。

    //『公開区分』がElementsの"OPN_KBN"に存在すればtrue
    public boolean isCheckOpenkbn1() {
        return ValidCheck.isCheckElements("OPN_KBN", openkbn1);
    }
}