本帖最后由 wo401554998 于 2013-08-24 19:06:05 编辑

解决方案 »

  1.   

    也是毕业生,还在失业中,xml解析你可以试试使用DOM来解析,或者SAX。DOM在解析的时候会把整个XML文档全部映射为Document里的树状结构,对于小文件很方便,但是文档很大时,对内存占用较大、速度较慢。SAX解析器从XML文档开始位置进行解析,同时根据定义好的事件处理器,决定当前所解析的部分是否记录、存储,这个的运用我也不熟悉。还有就是使用JAXB,把xml与Java类映射来解析数据。我也是菜鸟,共同学习,不知道对楼主有没有帮助,不对之处勿喷。
      

  2.   

    回复一楼   当然是没有的了   二楼  sax是流处理可是她过于低端,处理是有点慢的  和sax相同解析模式的是stax  你感兴趣的话可以看下  我在一块用的dom4j
      

  3.   

    你这个工作量太大了。(2)字段比我解析出来的字段少,这就麻烦了,我如何插入数据库呢?
    这个问题主动去和老板沟通,程序员的技能不光仅仅在于编码!这个xml解析我考虑jaxb,但是由于我也不太熟悉,还有最近很忙,
    估计按jaxb很慢才能实现出来。实在不行就 io + 正则解析。
      

  4.   

    具体相关博客你可以自己搜搜http://blog.csdn.net/axman/article/details/420910
      

  5.   

     嗯谢谢的回复,正则我去看看吧我去 可别正则解析 jom4j就OK了 沟通一下字段插入就完了
      

  6.   

    你搜一下解析XML的插件吧,dom4j,sax什么的。
    要把XML看成一棵树再解析。
      

  7.   

    用dom解析是肯定不行的,可以尝试sax方式。
    如果不行就把java的运行内存调到最大,这样也出现oom的话就把文件分割,分割成更小的单位,
    让内存容得下,
    是在不行就楼上说的IO方式。
      

  8.   

    不可以把你解析出来的数据先放在一个Map里面,再根据Key值插入到对应的列吗
      

  9.   

    jaxb解析还是可以的,映射下就好的
      

  10.   

    我的第一个任务也是解析xml并导入数据库,64M的文件,不过就两列,嘿嘿
      

  11.   

    (1)数据库表中字段比我解析的字段多,有些字段我这个xml没有,这好说,不插入就行了,
         
    (2)数据库字段比我解析出来的字段少  这2个我不是很明白,,,  ex:  数据库 字段  有  name  sex  age
      你解析的xml字段有      name  address phone  那你就只insert一个name就行了,难度你还管 address 和 phone 么?