如何从数据库转换为带有列表的序列化

发布于 2024-10-11 05:29:52 字数 793 浏览 2 评论 0原文

我有一个应用程序,其中使用 MySQL 服务器来存储和使用 5 个信息表。每当我必须表示信息时,我都会使用这样的 jTable:

# ID Name Info1 Info2 ...
=========================================
1 231 foo bar troll
2 244 .. .. .. 
3 246 .. .. ..
..
.

这里的 ID 与存储在表中的主 ID 相同。当我希望用户选择/编辑这些记录之一时 - 我会在 jtable 上应用 SelectionListener,读取所选行上的 ID,然后将更改应用到数据库中的该对象(使用我读取的 ID)

现在,我正在尝试将我的应用程序转换为与序列化对象一起使用,并将状态存储在文件中。数据将使用 LinkedList 存储,我将把列表本身序列化到文件中(而不是单个数据条目)。

我的问题是 - 如何将 LinkedListjTable 一起使用,以便用户仍然能够选择/进行更改/对 jTable 进行排序。

更具体地说,

  1. 我如何知道用户在 jTable 中选择了哪个项目 - 我应该使用索引匹配吗?或者我应该将 ID 属性插入到基础对象中?
  2. 如何根据对象属性(如按名称、info1 等排序)在 LinkedList 中执行排序,

谢谢。

I have this applications where I've used a MySQL server to store and use 5 tables of information. Whenever I had to represent the information - I would use a jTable like this:

# ID Name Info1 Info2 ...
=========================================
1 231 foo bar troll
2 244 .. .. .. 
3 246 .. .. ..
..
.

The ID here is the same primary ID that is stored in the tables. When i wanted the user to select / edit one of these records - I would apply a SelectionListener on the jtable, read the ID on the selected row, and apply the changes to that object in the Database (using the ID I read)

Now, I'm trying to convert my application for use with serialized objects and will be storing the state in files. Data will be stored using LinkedList and I will be serializing the lists themselves into files (not individual data entries).

My question is - How do I use LinkedList with jTable such that the user is still able to select / make changes / sort through the jTable.

To be more specific

  1. How do I know which item the user has selected in the jTable - should I use index matching? Or should I insert an ID attribute into the base objects?
  2. How do I perform sorting in the LinkedList on the basis of object attributes (like sort by name, info1, etc.)

Thanks..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

俯瞰星空 2024-10-18 05:29:52

您需要创建一个自定义表模型。扩展 DefaultTableModel 并从模型中的 LinkedList 返回数据。您还可以实现 setValueAt 方法以使 JTable 更改更新 LinkedList。

You need to create a custom table model. Extend DefaultTableModel and return the data from your LinkedList in your model. You can also implement the setValueAt method to have JTable changes update the LinkedList.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文