由于我的经验很少,遇到了以下问题,求教高手最近做一个小程序,程序记录的数据在2000-5000条左右,这种情况是选择记录在一个文本文件里好还是用数据库好?如果用TXT的话,我打算在每条记录前加个编号,便于统计,但是如果删除了中间的一条记录,编号就变得不连贯了,一般这种问题是怎样解决的?由于没有做过完整的程序,不知道程序最后要怎样发布,查了些资料,网上都说用exe4j好,这个方法封装的程序,可以在没有jre环境的机器中运行吗?还有,如果上面的问题选择数据库的话,封装以后能不能很好的支持?数据库可以成为一个单独的文件?谢谢!!

解决方案 »

  1.   

    xml不是也很好么:)java也自己带DB,虽然没用过,这个数量级应该没有问题的。桌面程序?直接给最终用户?
    一般能够选择java实现的人,都应该有JRE的。个人一直抵触把java搞成exe。你可以用脚本启动。
      

  2.   

    java自带的数据库我用过,和别的数据库一样。这个DB好像应用在桌面程序方面比较多,我用的时候也是。
    我觉得用数据库好,还方便管理。
      

  3.   

    感觉数据量不是很大,应该用那种都可以,但是看你的需求中有对记录进行操作(统计),那么感觉
    还是放在库中好,这样,你要是统计的话,只要一条查询语句就能查出你要的记录个数
    你可以想一下,如果用txt文件,那么如果你删除一条记录,在库中也只是按照ID删除一条记录的操作而已
    但是你要用文件来删除,你就得遍历,极端的情况下,你可能到文件的最后才删除一条记录~~~
    感觉只要对数据有操作,就应该放在库中,而一般只有生成的一些日志详单一类的才放在文件中
    气死了,打了一遍,把3G卡碰掉了,没提交上,又重新打了一遍·~
      

  4.   

    cs的话还是用数据库吧,至于非cs,上面也都说了,用自带的数据库或xml都行,你说的删除后编号不连贯很好解决啊,先定位到删除的地方,完后把后面的编号都取出来转换成整型(如果是数据库里本来就应该是整型)再减一就好了
      

  5.   

    我的觉得还是加个数据库教好,控制相对灵活点,尤其是一些增删改查的操作。
    如果是txt的话,相对开销要大。
      

  6.   

    不是CS模式,就是单机的应用的小程序,朋友有需求,我就给他做个小程序,也当练手了,因为是给别人做,而他又不精通电脑,所以考虑做成exe程序就是记录一些数据,可以查询增加和删除
      

  7.   

    感觉数据库灵活一点,在说你的数据也有点大了
    对于exe4j生成的是exe文件,直接可以运行吧,不用jre也可以吧
      

  8.   

    结合实际条件,先做个简单的
    启动tomcat服务+jBuild工具,用jsp现实数据,js view,new,update,delete调后台java代码view,new,update,delete操作text 文件
    内容,
    1,"ee",100
    2,"ee2",200
    3,"ee3",300做好了再考虑用oracle,新建一表,写连接方法,再对这表操作