在Java中是否存在C#DataTable等价物?在Java中相当于DataTable
10
A
回答
6
A similar question that has been asked recently。 ResultSet当然不是一个直接的等价物,因为它只能与数据库的活动连接一起工作,而DataTable可以“脱机”使用。
从个人经验来说,我认为在Java中没有直接的等价物(虽然没有尝试javax.sql.rowset.WebRowSet
)。你要么用普通的SQL去和java.sql.ResultSet
是你的朋友。或者你使用一些像Hibernate,Cayenne,Toplink这样的ORM工具来举几个例子。或者你建立自己的(不是我鼓励这个,但我认为已经成功完成了多个项目)。
2
考虑使用
java.sql.ResultSet
Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("select * from generic_table");
ResultSetMetaData md = rs.getMetaData();
1
否 - 不是在标准库(即的Java API)。
1
我使用的解决方法是JTable。它没有适当的DataTable的健壮的数据特征,但它可以让你获取一些数据并将其绑定到具有某种结构的控件上。
class TableModel extends AbstractTableModel
{
String[] columnNames = {“FirstName”,”LastName”,”Title”};
Object[][] rowData= {{‘John,”Smith”,”President”},{“John”,”Doe”,”Employee”}};
public int getColumnCount()
{
return columnNames.length;
}
public int getRowCount()
{
return rowData.length;
}
public String getColumnName(int col)
{
return columnNames[col];
}
public Object getValueAt(int row, int col)
{
return data[row][col];
}
}
然后简单地使用你:
JTable table = new JTable(new TableModel());
再次,这是快速,简单,如果你正在处理大量的数据,我会建议使用合适的ORM工具。
3
给这个框架一个尝试:
它是一个在内存中的数据集库是通用的,也是类型安全的。可以:自动从关系查询
- 拉数据(或从任何其他编程源),
- 问题复杂,链查询对数据集,
- 通过指定特定列的索引优化给定的数据集。
它易于使用且没有任何重要的依赖关系。它也符合java.sql.ResultSet,所以它可以很容易地集成到任何现有的应用程序,查询关系数据库
0
从标准库DefaultTableModel
是很好的类。
ResultSet set = s.getResultSet();
ResultSetMetaData metaData = set.getMetaData();
int totalColumn = metaData.getColumnCount();
Object[] dataRow = new Object[totalColumn];
if(set!= null)
{
for(int i=1;i<=totalColumn;i++)
{
table.addColumn(metaData.getColumnName(i));
}
while(set.next())
{
for(int i=1;i<=totalColumn;i++)
{
dataRow[i-1] = set.getObject(i);
}
table.addRow(dataRow);
}
}
相关问题
- 1. 相当于ungetc在java中
- 2. 在Java中相当于STXXL
- 3. 在JAVA中相当于cURL
- 4. 和在PHP相当于在Java中
- 5. Java相当于Curl
- 6. callgrind相当于java?
- 7. Java相当于Buffer.BlockCopy
- 8. Java相当于scala.collection.mutable.Map.getOrElseUpdate
- 9. Java相当于pyftpdlib?
- 10. Java相当于app.config?
- 11. Java等于()相当于PHP
- 12. 相当于C#的DateTime.Now在Java中吗?
- 13. C#出的IntPtr相当于在Java中
- 14. 的sprintf相当于在Java中
- 15. $在Java中包含#include相当于?
- 16. 的NumericUpDown相当于在Java中
- 17. 在Java世界中相当于NServiceBus
- 18. .NET的String.Format相当于在Java中
- 19. php stristr函数在java中相当于?
- 20. '朋友'相当于Java?
- 21. 相当于Java Python的json.dumps
- 22. Java相当于.NET System.Net.ServicePointManager
- 23. C#相当于Java的Thread.setDaemon?
- 24. 相当于Java Convert.FromBase64String方法
- 25. 相当于Java的C#Action.BeginInvoke
- 26. python相当于java的OutputStream?
- 27. Java相当于C#代码
- 28. Java相当于.NET的String.Format
- 29. 的Java相当于WPF
- 30. 相当于Java C#Array.Copy
但在这里,我需要遍历,使用resultSet.next()。我不能说,给我第1栏的价值或给我(2,2) – Ajay 2009-08-27 13:22:37