栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【SpringMVC】上传下载

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【SpringMVC】上传下载

【配置准备】

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

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




    org.apache.poi
    poi-ooxml
    5.0.0

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

前端页面导出代码
前端页面导入代码
选择上传文件

同步导出Controller层

@RestController
public 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层实现

    
    List selUserInfoAll();

    
    long addUserInfoAll(List list);

serviceImpl类

@Override
public List selUserInfoAll() {
    return userInfoDao.selUserInfoAll();
}

@Override
public 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})
    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/915059.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号