How to display tree hierarchy in Java?

2019-02-12 19:26发布

I have a table in a database named "Process"

This process table has 3 fields:

  • process_id
  • process_name
  • process_parent_id

Now I want to display this parent child hierarchy in Graphical format. So could you please suggest me the following:

Q1. Which data structure would be better to use so as to get data from the database and store in that data structure?

Q2. How to display that tree (process hierarchy) in graphical format?


EDIT:

I want the graphical format something like this:

Tree hierarchy

4条回答
Luminary・发光体
2楼-- · 2019-02-12 19:29

Re Q1: You could find on internet resources several Java implementations of Tree structure, for example this generic tree.

Re Q2: One alternative is using JTree. Check the Java Tutorial trail on How to use Trees

JGraphT could be a good starting point to build something like your example. Check the demo at http://jgrapht.sourceforge.net/visualizations.html

查看更多
Evening l夕情丶
3楼-- · 2019-02-12 19:35

Swing has a built-in control for displaying data in a Tree format called JTree. It also provides a data model called DefaultTreeModel which you can use to store the data. This link gives a pretty good explanation of using a JTree with a data model.

[Edit]:

To answer your updated question, a graph like that could quite well be handled by JGraph which would also provide the data model which seems to work similarly to the Tree model swing provides.

查看更多
霸刀☆藐视天下
4楼-- · 2019-02-12 19:43

As others have suggested, using JTree is one possible solution. However, if you wish to have more control over the appearance of your tree I suggest checking out the JUNG graphing library. This can potentially give you great results but will require more work.

查看更多
贼婆χ
5楼-- · 2019-02-12 19:51

For the hierarchy in graphical format, what about a JTree ? http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html

查看更多
登录 后发表回答