select id, name, age, sex (等等……不确定几个column) from user where name="aa" order by id;
本来是这样一条sql,可是现在要求不允许在sql里用order by这个函数(说是会影响效率……)。就是把结果查出来然后用java来排序id字段。首先我是把查出来的所有列的结果分别放到1个list里。然后重写comparator类,用Collections.sort(userlist, comparator);来排序。 现在程序是正常运行的。可问题是,因为要查的sql column的数量不确定,所以,对应java pojo也要增加,譬如 setName(), getAget()……等等。
这样每次不同的sql就要去调用一个不同的java排序,这样写起来很烦,要写很多排序的java。 我想问声像我这样的有什么办法可以简单高效率的实现吗?
本来是这样一条sql,可是现在要求不允许在sql里用order by这个函数(说是会影响效率……)。就是把结果查出来然后用java来排序id字段。首先我是把查出来的所有列的结果分别放到1个list里。然后重写comparator类,用Collections.sort(userlist, comparator);来排序。 现在程序是正常运行的。可问题是,因为要查的sql column的数量不确定,所以,对应java pojo也要增加,譬如 setName(), getAget()……等等。
这样每次不同的sql就要去调用一个不同的java排序,这样写起来很烦,要写很多排序的java。 我想问声像我这样的有什么办法可以简单高效率的实现吗?
解决方案 »
- 求问获知socket服务器断开
- jfreechart如何显示两个纵轴
- java 如何实现Graphics2D画的图形进行缩放?
- java学习语音是不是还要下载什么东西???
- 谁能给我个javamail imap协议的访问多个文件夹的例子?
- 出现乱码怎么解决?
- 请教stack压入实数的问题
- 访问private变量问题
- 高手赐教!我公司准备用JDBC DRIVE - (Native-API Partly-Java Driver)连接 MS Access 那位能告知具体操作和驱动的下载,还有文献,
- 急问:如何将java.util.Date转换成java.sql.Date,来算出两个日期相差天数?
- 为什么这样创建不了文件
- 请教语法
这样所有的list就可以共用一个comparator了。
你是这个意思吗?
你说的在重写时拿出getID的值。打个比方,譬如现在的程序有getID,getName2个方法,可下一条sql要用到getTotal, getItem……等等方法。所以我每条sql都要写个程序来排序,这样要写很多很多
同意一楼 如果order by效率低 java排序may be 更低