xiaozhutou_love
xiaozhutou_love
采纳率46.2%
2017-01-16 06:16

java像如下的excel应该如果导入到数据库 或者 表格应该怎么设计

图片说明想要把这样的excel表格导入到数据库,应该怎么导入 我知道用POI,但是不知道怎么去
读取答案存入对象写入数据库 答案如果是两个 三个就会变成不定行,不知道该如何读取,或者有没有更好的设计表格让读取方便一点呢

其实还是不理解我的意思 或者是我说的不清楚 。见谅。我的意思是 选项由用户去输入(也就是用户决定了你选项有几个)。你事先并不知道要导入的
excel每道题的答案有几个,就是读取的时候得判断有几个答案 然后把这些答案都读取
存入到数据库。。。我不知道怎么去判断。或者怎么重新设计
表格

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • bjjoy2009 迷茫猿小明 4年前

    用那个bjjoy2009 代码,按行读取excel,把数据存入map,之后根据题号遍历map,遇到题号,把之前获取的数据存入数据库。
    这有个大疑问,你怎么设计的数据表存啊,答案数量不确定,难道答案是单独放在一个表?

    点赞 评论 复制链接分享
  • xiaozhutou_love xiaozhutou_love 4年前

    其实还是不理解我的意思 或者是我说的不清楚 。见谅。我的意思是 选项由用户去输入(也就是用户决定了你选项有几个)。你事先并不知道要导入的
    excel每道题的答案有几个,就是读取的时候得判断有几个答案 然后把这些答案都读取到存入到数据库。。。我不知道怎么去判断。或者怎么重新设计
    表格

    点赞 评论 复制链接分享
  • bjjoy2009 迷茫猿小明 4年前

    public static List> readToMap2003(InputStream inputStream,int beginRow)throws Exception{
    List> data=new ArrayList>();
    HSSFWorkbook wb = new HSSFWorkbook(inputStream);
    HSSFSheet sheet = wb.getSheetAt(0);
    int lastRow = sheet.getLastRowNum();
    if (lastRow > 0) {
    for (int i = beginRow; i <=lastRow; i++) {
    HSSFRow row = sheet.getRow(i);
    if (row != null) {
    Map m=new HashMap();
    for(int j=0;j<columns.length;j++){
    Column col=columns[j];
    m.put(col.getKey(), row.getCell(j));
    }
    data.add(m);
    }
    }
    }
    return data;
    }

    column类构造函数如下,就是一个map,对应每列的excel的key,value
    public Column(String key, String name) {
    this.key = key;
    this.name = name;
    }

    点赞 评论 复制链接分享
  • qq_17311469 __OTime 4年前

    读取的时候是一个cell一个cell读取的,定义一个herder数组,依次取值,然后在存在你的对象里

    点赞 评论 复制链接分享

相关推荐