我正在从mysql数据库中检索一些数据,该数据就像ID一样,我希望将该ID查找到另一个表(我可以在哪里创建此表)中,该表包含所有ID并返回相应的值(字符串)与该ID相关。我的问题是,我可以在java中创建查找表,还是可以使用MS Excel作为查找表?
以下是我迄今为止编写的代码:
package dbconnect;
import java.sql.*;
public class Dbconnect {
public static void main(String[] args) {
int a;
String b;
String c;
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con= DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test","root","xyz123");
Statement stmt= con.createStatement();
ResultSet rs=stmt.executeQuery("select * from shop");
while(rs.next())
{ a = rs.getInt(1);
b = rs.getString(2);
c = rs.getString(3);
System.out.println(a+" "+b+" "+c);
}
con.close();
}catch(Exception e){ System.out.println(e);}
}
}
PS:我想要了解哪种方法可行且更容易,或者任何其他方法都可以创建查找表,而不是代码。
答案 0 :(得分:0)
如果查找表数据是从某个外部系统生成的,那么我们可以使用Java Collection HashMap(Key,Value)。所以我们可以在每次运行之前加载HashMap表,这样我们就可以进行查找。它在查找时会更快,但是大小增加加载需要时间并且维护很困难(即我们需要在运行结束时停放数据,在运行之前加载数据)。
如果查找表是固定的,那么每次运行程序都会有很大的不同,然后在MySql中创建一个表,并选择where子句传递键值。这种方法易于维护,数据量很大。性能将很好,因为我们不需要在运行之前加载数据。