1

我有一个程序,我必须从 excel 文件中读取数据并将它们存储在数据库中。我正在使用 LinkedHashmap 将每个单元格作为字符串读取并存储它们。我的excel文件包含数据:

ID    Name        Salary
43    paulina     1000
5     christine   2349000
54    laura       12587458
49    jim         45878

在我的代码中,我在 excel 文件的第一行中为表格创建了字段,然后我再次使用 LinkedHashMap 将其余数据填充到表格中。我的问题是如何在这一步中将数据存储在表中,而不是按照它们在文件中的方式,而是通过升序 ID。我搜索我可以用 TreeMap 做到这一点,但究竟如何?有人可以帮我吗?

4

2 回答 2

0

如果您的问题是如何对数据库进行排序,那么 loki 是对的:它并不重要。如果您的问题是如何为程序订购它...您可以使用 TreeMap,它是一种快速的数据结构。您需要使结构中的对象实现 Comparable,或者您需要使用 Comparator 构造 TreeMap。阅读有关两者的官方 Java 教程 - 两者都可以使用,只是编程风格略有不同。

于 2013-04-29T10:57:38.213 回答
0

DBMS(如 MySQL、Oracle 等)的一个特点是每一行数据都是独立的。行在 DBMS 中的存储没有自然顺序。

也就是说,当您使用SELECT语句检索行时,它们在结果集中呈现给您的顺序在形式上是不可预测的。如果您希望以可预测的顺序显示行,ORDER BY请在语句中使用子句SELECT

碰巧某些 DBMS 技术呈现出行以特定顺序存储的错觉。但是他们对此不做任何承诺,除非您使用ORDER BY. 当表格达到一定大小时应用程序开始出现故障时,我很难学到这一点。

因此,在将行写入 MySQL 之前INSERT对其进行排序是浪费您的时间。让您的插入软件非常简单。当你把它们拿出来时订购它们非常容易——使用ORDER BY

于 2013-04-29T11:29:05.437 回答