使用jQuery OCUpload实现excel文件一键上传功能
生活随笔
收集整理的這篇文章主要介紹了
使用jQuery OCUpload实现excel文件一键上传功能
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用jQuery OCUpload實現excel文件一鍵上傳功能
js代碼
//為導入按鈕,添加一鍵上傳效果 $("#button-import").upload({action:'../../area_batchImport.action',onSelect:function(){//選中文件后,關閉自動提交this.autoSubmit() = false;//判定文件格式以.xls .xlsx結尾var filename = this.filename();var regex = /^.*\.(xls|xlsx)$/;if(regex.test(filename)){//滿足this.submit();}else{$.messager.alert("警告","只能上傳.xls .xlsx結尾的文件","warning");}},onComplete:function(response){alert("文件上傳成功!");} });Action:
@Namespace("/") @ParentPackage("json-default") @Controller @Scope("prototype") public class AreaAction extends BaseAction<Area> {//注入service@Autowiredprivate AreaService areaService;//接收上傳文件private File file;public void setFile(File file) {this.file = file;}//批量區域數據導入@Action(value="area_batchImport")public String batchImport() throws Throwable{List<Area> areas = new ArrayList<Area>();HSSFWorkbook hssfBook = new HSSFWorkbook(new FileInputStream(file));HSSFSheet sheet = hssfBook.getSheetAt(0);for (Row row : sheet) {//一行數據對應一個區域對象if(row.getRowNum()==0){//第一行,跳過continue;}//跳過空行if(row.getCell(0)==null||StringUtils.isBlank(row.getCell(0).getStringCellValue())){continue;}Area area = new Area();area.setId(row.getCell(0).getStringCellValue());area.setProvince(row.getCell(1).getStringCellValue());area.setCity(row.getCell(2).getStringCellValue());area.setDistrict(row.getCell(3).getStringCellValue());area.setPostcode(row.getCell(4).getStringCellValue());areas.add(area);}areaService.saveBatch(areas);return NONE;} }Service層代碼:
@Service @Transactional public class AreaServiceImpl implements AreaService {@Autowiredprivate AreaRepository areaRepository;@Overridepublic void saveBatch(List<Area> areas) {areaRepository.save(areas);}}dao層:
public interface AreaRepository extends JpaRepository<Area,String> {}總結
以上是生活随笔為你收集整理的使用jQuery OCUpload实现excel文件一键上传功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring data jpa实现有条件
- 下一篇: 功利性学习:别陷入勤奋陷阱