{/'title/':/'优化以下代码,并用中文解释修改部分://npublic AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception {//n//tWorkbook workbook = null;//n//tInputStream inputStream = file.getInputStream();//n//tString fileExtension = getFileExtension(Objects.requireNonNull(file.getOriginalFilename()));//n//t// 根据文件类型进行区分//n//tif (fileExtension.equals(/'xlsx/')) {//n//t/tworkbook = new XSSFWorkbook(inputStream);//n//t} else if (fileExtension.equals(/'xls/')) {//n//t/tworkbook = new HSSFWorkbook(inputStream);//n//t} else {//n//t/treturn AjaxResult.error(/'Invalid file extension/');//n//t}//n//n//tString sheetName = /'a-HKG BW WHSE-in bound/'; // 导入信息的工作表名称//n//tSheet sheet = workbook.getSheet(sheetName);//n//tif (sheet == null) {//n//t/tthrow new IllegalArgumentException(/'Sheet with name /' + sheetName + /' does not exist/');//n//t}//n//tInputStream getSheetInputStream = workbookToInputStream(workbook);//n//tExcelUtil util = new ExcelUtil<>(AHkgBwWhseInBound.class);//n//tList dataManagementList = util.importExcel(getSheetInputStream, 1);//n//tString operName = ShiroUtils.getSysUser().getLoginName();//n//tString message = aHkgBwWhseInBoundService.importData(dataManagementList, updateSupport, operName);//n//treturn AjaxResult.success(message);//n}//n//nprivate static String getFileExtension(String fileName) {//n//tint dotIndex = fileName.lastIndexOf(/'./');//n//tif (dotIndex != -1 && dotIndex != 0) {//n//t/treturn fileName.substring(dotIndex + 1);//n//t} else {//n//t/treturn /'/';//n//t}//n}//n//nprivate static InputStream workbookToInputStream(Workbook workbook) throws IOException {//n//tByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();//n//tworkbook.write(byteArrayOutputStream);//n//treturn new ByteArrayInputStream(byteArrayOutputStream.toByteArray());//n}/',/'content/':/'优化后的代码如下所示://n//npublic AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception {//n//tWorkbook workbook = null;//n//ttry (InputStream inputStream = file.getInputStream()) {//n//t/tString fileExtension = getFileExtension(Objects.requireNonNull(file.getOriginalFilename()));//n//t/t// 根据文件类型进行区分//n//t/tif (fileExtension.equals(/'xlsx/')) {//n//t/t/tworkbook = new XSSFWorkbook(inputStream);//n//t/t} else if (fileExtension.equals(/'xls/')) {//n//t/t/tworkbook = new HSSFWorkbook(inputStream);//n//t/t} else {//n//t/t/treturn AjaxResult.error(/'无效的文件扩展名/');//n//t/t}//n//n//t/tString sheetName = /'a-HKG BW WHSE-in bound/'; // 导入信息的工作表名称//n//t/tSheet sheet = workbook.getSheet(sheetName);//n//t/tif (sheet == null) {//n//t/t/tthrow new IllegalArgumentException(/'不存在名称为 /' + sheetName + /' 的工作表/');//n//t/t}//n//t/tInputStream getSheetInputStream = workbookToInputStream(workbook);//n//t/tExcelUtil util = new ExcelUtil<>(AHkgBwWhseInBound.class);//n//t/tList dataManagementList = util.importExcel(getSheetInputStream, 1);//n//t/tString operName = ShiroUtils.getSysUser().getLoginName();//n//t/tString message = aHkgBwWhseInBoundService.importData(dataManagementList, updateSupport, operName);//n//t/treturn AjaxResult.success(message);//n//t}//n}//n//nprivate static String getFileExtension(String fileName) {//n//tint dotIndex = fileName.lastIndexOf(/'./');//n//tif (dotIndex != -1 && dotIndex != 0) {//n//t/treturn fileName.substring(dotIndex + 1);//n//t} else {//n//t/treturn /'/';//n//t}//n}//n//nprivate static InputStream workbookToInputStream(Workbook workbook) throws IOException {//n//tByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();//n//tworkbook.write(byteArrayOutputStream);//n//treturn new ByteArrayInputStream(byteArrayOutputStream.toByteArray());//n}//n//n修改部分://n1. 为了正确关闭输入流,使用了try-with-resources语句来自动关闭输入流。//n2. 修改了错误信息,使其更加清晰和有意义。//n3. 修改了抛出的异常信息,使其更加清晰和有意义。/

Java代码优化:使用try-with-resources语句和清晰的错误信息

原文地址: https://www.cveoy.top/t/topic/pzx7 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录