1数据库增删改查底层是如何实现的?
个人认为主要是对数据表的操作,但是具体对这些表是怎么操作的?
2用文本文件来模拟 数据的存储 实现增删改查。
思路  一行存储 一条信息,各个属性之间用 % 隔开   ,利用IO读取一行  就是一条数据信息
     利用字符串的切割方法  获得各个 字段 ,然后组装成 对象。遍历所有的行 就去到 “数据库”中的
     所有对象。所有对象放进List表存储。增
利用IO,在文件尾处添加新数据。查
利用IO,获得所有对象。得到List表。  也可以通过ID获得单个的对象。删
依据ID ,从List列表中remove掉这个对象,清空文件,然后将新的 list 信息写入文件中去。改
依据ID ,从List列表中取到这个对象,对其修改 ,清空文件,然后将新的 list 信息写入文件中去。------------------------
现在考虑有没有新的更优秀的方法来实现  
修改 和  删除 。
只针对文件中的 一行 来修改。而不清空文件。目前已知RandomAccessFile可以实现。------------------------------------
各抒己见  谢谢各位!!  

解决方案 »

  1.   

    查询如果你能保证第一行Id=1,第二行id=2 就可以用LineNumberReader来查找.LineNumberReader reader = new LineNumberReader(new BufferedReader(new FileReader(file)));
    String str = null;
    while ((str = reader.readLine()) != null) {
    if (reader.getLineNumber() == 4) {
         System.out.println("第4行字符串:"+str);
       }
    }
      

  2.   

    修改和删除操作,建议使用RandomAccessFile实现。
      

  3.   

    数据库的实现远没有你想的那么简单
    数据库的存在就是最大限度上减少程序对IO的操作
    比如Oracle的系统就是构筑在非文件系统中。如果说用IO来模拟数据库操作的话,
    建议使用Excel来实现,毕竟JAVA对操作Excel的插件有不少。