Step3:関連のあるデータをオブジェクトに
ファイル一覧とファイルサイズを保持するクラスImageFilesで、
@Path("/")
public class Step3Action extends Action {
public ServletContext context;
public ImageFiles foodFiles; ┓
public ImageFiles animalFiles; |
public ImageFiles landscapeFiles; ┛①
public ActionResult step3() {
foodFiles = getFiles("/images/food");
animalFiles = getFiles("/images/animal");
landscapeFiles = getFiles("/images/landscape");
return new Forward("step3.jsp");
}
private ImageFiles getFiles(String path) {
File[] files = new File(context.getRealPath(path))
.listFiles();
return new ImageFiles(files,
FileUtil.sizeOfFiles(files));
}
public static class ImageFiles { ┓
private final File[] files; |
private long sizeOfFiles; |
|
public ImageFiles(File[] files, long sizeOffiles) { |
this.files = files; |
this.sizeOfFiles = sizeOfFiles; |
} |
|
public File[] getFiles() { |
return this.files; |
|
} |
|
public long getSizeOfFiles() { |
return this.sizeOfFiles; |
} |
} ┛②
}
フィールド変数が整理されてすごくわかりやすくなったっすね
このように、
たとえば拡張子を指定して、
public static class ImageFiles {
:
public File[]
getFilesByExtension(String ext) {
:
}
}
それではそろそろ抽象化を……。
ふぉっふぉっふぉっ、
かしこ、