パブリック クラスUploadImgUtils { プライベート 静的な文字列関数savepath = "" ; / ** *アップロードした写真のツール * * @paramのファイルのファイル * @param workNo作業順序番号 * @paramの環境(DEV、PROD、テスト)プロパティの設定 * @return * @throws OperationException * / パブリック 静的な文字列uploadImg(MultipartFileファイル、workNo文字列、文字列プロパティ)スローOperationException { IF(ファイル== nullの){ スロー 新しいOperationException(ReturnCodeEnum.OPERATION_IMG_IS_NULL)。 } であれば(file.getSize()>×1024 1024×1 ){ スロー 新しいOperationException(ReturnCodeEnum.OPERATION_IMG_SIZE_LARGE)。 } // 获取文件后缀 文字列のサフィックス= file.getOriginalFilename()サブストリング(file.getOriginalFilename()のlastIndexOf()+ 1 "" ); もし(! "JPG、JPEG、GIF、PNG" .toUpperCaseを()suffix.toUpperCase())(含まれています。){ スロー 新しい(ReturnCodeEnum.OPERATION_IMG_FORM_ERROR)をOperationExceptionを。 } // 对関数savepath进行过赋值 のgetProperties(プロパティ)。 ファイルsavePathFile= 新しい新しいファイル(関数savepath); IF(!のSavePathFile.exists()){ // ディレクトリの存在であれば、ディレクトリの作成 (savePathFile.mkdirを); } // 労働単一番号一意の識別子として 文字列ファイル名= workNo + "" + 接尾語; 試み{ // 指定されたディレクトリ内のファイルの保存 file.transferTo(新しい新しいファイル(関数savepath + ファイル名)); } キャッチ(例外E){ スロー 新しい新OperationException(E、ReturnCodeEnum.OPERATION_SAVE_IMG_ERROR); } // 戻りますファイル名の リターン関数savepath + ファイル名。 } / ** *读取配置文件中的信息。 * * @return * / プライベート 静的 無効のgetProperties(文字列名){ YamlPropertiesFactoryBean FactoryBeanの = 新しいYamlPropertiesFactoryBean(); factoryBean.setResources(新 ClassPathResource( "用途向け" +名+ ".yml" )); factoryBean.afterPropertiesSet(); プロパティは、オブジェクト = )(factoryBean.getObject。 関数savepath =(文字列)object.get( "operation.savePath" )。 } }
ファイルのアップロード以下の方法は、環境変数の設定ファイルを取得するために使用され、上