> 文档中心 > 【SpringMVC】上传下载

【SpringMVC】上传下载

【配置准备】

       项目采用的是springmvc,采用maven管理项目

①做导入导出就要引入相应的excel的jar包,在pom.xml文件中添加依赖:

    org.apache.poi    poi-ooxml    5.0.0

②在SpringMVC.xml文件中的配置:

前端页面导出代码

前端页面导入代码

    选择上传文件    

同步导出Controller层

@RestControllerpublic class UserInfoController {    @Autowired    private DepartInfoService departInfoService;    @Autowired    private UserStateService userStateService;/**     * 同步导出     */    @RequestMapping("/importUserInfo")    public String importUserInfo(@RequestPart("upFile") MultipartFile multipartFile) throws IOException { if (!multipartFile.getOriginalFilename().endsWith(".xlsx")) {     return "非excel文件"; }// 创建一个集合存储Excel读取员工信息 List list = new ArrayList(); XSSFWorkbook workbook = new XSSFWorkbook(multipartFile.getInputStream());// 获取第一页的数据 XSSFSheet sheet = workbook.getSheetAt(0);// 获取总行数 int rowTotal = sheet.getLastRowNum();// 遍历读取每行 for (int i = 1; i < rowTotal; i++) {     XSSFRow row = sheet.getRow(i);     UserInfo userInfo = new UserInfo();     userInfo.setUserId(row.getCell(0).getStringCellValue());     userInfo.setUserName(row.getCell(1).getStringCellValue());     String gender = row.getCell(2).getStringCellValue();     userInfo.setGender(Integer.parseInt(gender));     userInfo.setDepartInfoName(row.getCell(3).getStringCellValue());     userInfo.setUserStateName(row.getCell(4).getStringCellValue());     //将该对象装入集合中     list.add(userInfo); } //解决部门状态的ID List departInfos = departInfoService.selDepartInfo(); List userStates = userStateService.selUserState();// 列表遍历 list.forEach(userInfo -> {//     给员工赋值对应部门的id     for (DepartInfo d : departInfos) {  if (userInfo.getDepartInfoName().equals(d.getDepartName())) {      userInfo.setDepartId(d.getDepartId());      break;  }     }     for (UserState u : userStates) {  if (userInfo.getUserStateName().equals(u.getUserStateName())) {      userInfo.setUserStateId(u.getUserStateId());      break;  }     } });long count = userInfoService.addUserInfoAll(list); //路径 return count+"";    }​

 同步导出Controller层

/**     * 导出员工信息     */    @RequestMapping("/exportUserInfo")    public void exportUserInfo(HttpServletResponse response) throws IOException, IllegalAccessException { //查询所有的员工信息 List list = userInfoService.selUserInfoAll(); //调用Excel工具类的导出功能 new ExcelUtils().export(list, response, UserInfo.class, "员工表");    }

Service层实现

    /**     * 导出员工信息     * @return     */    List selUserInfoAll();    /**     * 批量添加     * @param list     * @return     */    long addUserInfoAll(List list);

serviceImpl类

@Overridepublic List selUserInfoAll() {    return userInfoDao.selUserInfoAll();}@Overridepublic long addUserInfoAll(List list) {    return userInfoDao.addUserInfoAll(list);}

Dao层实现

List selUserInfoAll();long addUserInfoAll(List list);

resoures中Mapper.xml文件配置

    insert into userInfo(userId,userName,gender,departId,userState)values     (#{u.userId},#{u.userName},#{u.gender},#{u.departId},#{u.userStateId})    

开发者涨薪指南 【SpringMVC】上传下载 48位大咖的思考法则、工作方式、逻辑体系书本网