论坛首页 Java企业应用论坛

关于jdbc的一种功能的实现

浏览 20093 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-02-27  
和分页有毛线的区别
0 请登录后投票
   发表时间:2012-02-27  
xieye 写道
一次取1000条,每页显示一百条,最后一个一百条,点下一页的时候再去查询。

缓存当然不存成一个文件,而是多个文件,比如1000条记录一个文件。



  这位兄弟说的这种方式,其实说白了还是通过Sql 在数据库中进行分段读取,然后在实际显示的时候,把这些取出来的数据,再次进行分段处理...
  不过,个人觉得没必要这样子,LZ的问题可以直接进行sql 分页就Ok了!
0 请登录后投票
   发表时间:2012-02-27  
个人感觉楼主应该使用的是mysql数据库, oracle不会出现这个问题。
如果使用mysql,可以尝试下面方法解决:
stmt=conn.createStatement(sql,java.sql.ResultSet.TYPE_FORWARD_ONLY,java.sql.ResultSet.CONCUR_READ_ONLY);
stmt.setFetchSize(Integer.MIN_VALUE);
确保你的版本是5.0以上,需要注意的是在statement关闭前,会一直lock table。所以要尽快处理完业务以释放表锁。
0 请登录后投票
   发表时间:2012-02-27  
楼主的意思是不是用代理模式,只显示用户名和性别年龄之类的基本字段,然后点击用户名,再显示详细的信息?
0 请登录后投票
   发表时间:2012-02-27  
aa87963014 写道
和分页有毛线的区别

同意,蛋疼的想法,不过主动思考还是值得赞一下的
0 请登录后投票
   发表时间:2012-02-27  
楼主你的意思我明白。但是你处理完一条数据后,怎么告诉数据库你处理完了要用下一条呢?这还不如再一条sql出去了么。。。。
0 请登录后投票
   发表时间:2012-02-27  
用数据库自带的工具导出表数据
0 请登录后投票
   发表时间:2012-02-27  
楼主 我也在深圳 还没工作  你们公司还要人不
0 请登录后投票
   发表时间:2012-02-27  
就是分页。鉴定完毕
0 请登录后投票
   发表时间:2012-02-27  
数据不存在内存中,那只能存在硬盘这样的介质中。有这样一个方法,不过有两个前提:1.数据库中的数据极少改动。2.能够容忍效率问题。

你可以把数据库中的数据通过Java的对象序列化机制存储到本地文件中,然后通过流操作来定位要发序列化的对象。这样可以实现你所说的功能。但是这个在效率上的优化,就要看你自己的了。毕竟序列化和反序列化是一个很费时间的操作。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics