有点黑嘿黑嘿 2017-09-11 09:24 采纳率: 0%
浏览 1083
已结题

JAVA从数据库获取数据导入excel,获取数据详细代码该怎么写

萌新小白,这个从网上看来的方法,框架用的SSM。
现在Excel能导出文件,但是除了标题,什么内容都还没能从数据库获取。
list中不知道怎么加入数据,也不知道怎么加入。
希望大神们帮帮忙解答下

以下service层代码

     String[] excelHeader = { "title", "urgency", "projectman"};  
    public HSSFWorkbook export(List<UserInfo> list) {  
        HSSFWorkbook wb = new HSSFWorkbook();  
        HSSFSheet sheet = wb.createSheet("UserInfo");  
        HSSFRow row = sheet.createRow((int) 0);  
        HSSFCellStyle style = wb.createCellStyle();  
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);  

        for (int i = 0; i < excelHeader.length; i++) {  
            HSSFCell cell = row.createCell(i);  
            cell.setCellValue(excelHeader[i]);  
            cell.setCellStyle(style);  
            sheet.autoSizeColumn(i);  
         // sheet.SetColumnWidth(i, 100 * 256);  
        }  

        for (int i = 0; i < list.size(); i++) {  
            row = sheet.createRow(i + 1);  
            UserInfo UserInfo = list.get(i);  
            row.createCell(0).setCellValue(UserInfo.getTitle());  
            row.createCell(1).setCellValue(UserInfo.getUrgency());  
            row.createCell(2).setCellValue(UserInfo.getProjectman());  
        }  
        return wb;  
    } 

以下是控制层代码

@RequestMapping(value = "/excel/export")  
    public void exportExcel(HttpServletRequest request, HttpServletResponse response)   
    throws Exception {  
        List<UserInfo> list = new ArrayList<UserInfo>();
        UserInfo obj=new UserInfo("","","");
        for(int i=0;i<list.size();i++) {
            list.add(new UserInfo(obj.getProjectman(),obj.getTitle(),obj.getUrgency()));
        }  
        HSSFWorkbook wb = ms.export(list);  
        response.setContentType("application/vnd.ms-excel");  
        response.setHeader("Content-disposition", "attachment;filename=UserInfo.xls");  
        OutputStream ouputStream = response.getOutputStream();  
        wb.write(ouputStream);  
        ouputStream.flush();  
        ouputStream.close();  

修改成这样后开始报错……

 org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.test.entity.UserInfo]: No default constructor found; nested exception is java.lang.NoSuchMethodException: org.test.entity.UserInfo.<init>()
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

现在知道数据获取不了,但实际控制层代码不知道怎么写明白,select全部之后怎么封装到数组里,然后遍历……还是很懵逼

  • 写回答

6条回答 默认 最新

  • MathRandom 2017-09-11 09:38
    关注

    显示的数据都是你从数据库查出来的吧,这里你没有从哪里查了数据,而且你这里设置的几个对象也是个空的,所有就什么都没有啊

    评论

报告相同问题?

悬赏问题

  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 请求分析基于spring boot+vue的前后端分离的项目
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥200 关于#c++#的问题,请各位专家解答!网站的邀请码
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?