基于 MVC 模型的 swing 图形组件的设计
郑三红, 李长云
(湖南大学软件学院 长沙 410082)
摘要:介绍了 java 基础类库 swing 包中图形组件的组成和设计的原则,从模型、视图、控制这三部分与
树的对应部分来说明图形包的设计和实现,使 swing 中对图这种数据结构也能可视化表示,对完善
swing 的体系结构有着重要的意义。
关键词: java 图形 MVC 模型 设计模式
中图分类号:T P317.1
Design the JGraph Swing Component Base on MVC
Pattern
ZHENG San-hong,LI Chang-yui
(Software School in Hunan University,Changsha 410082)
Abstract
This paper provides a description of the JGraph component and the design
principle. From model、view、control we outlines the main di6erences and
consequences on the API between JGraph and JTree,that make the data
structure of graph be visible, and have a meaningful for the integrity of the
swing package
Key word Graph MVC JTree design-pattern
1. 引言
java swing包中对集合、线性结构、树结构,表等数据结构都有相应的包如
Collection、JList 、JTree、JLable 来表示,但遗憾的是对图或网这种数据结构(注这里的图
指的是基于图论的概念,既任何有联系的对象的网络结构,而不是功能性画图)却没有一种包
来体现。而图在现实生活中有着重要的应用。因此,开发一个个基于图论的java图形包就显得
十分必要。对于完善swing包体系有着重要的意义。
2. MVC模式介绍
面向对象软件最大的好处之一就是复用,不是解决任何问题都要从头做起。在众多的
软件开发过程中,人们发现了许多问题都可以运用以前的设计方案解决现在的问题。设计
模式也就应运而生,简单地说,设计模式是对反复出现的设计问题的重复解决方案。在众
多的设计模式中,有一种模型-视图-控制模式,简称MVC模式。这个模式是一种通用的框
架,它由三部分组成,如图1所示:
图1 MVC模型 图2 swing 模型-代理模式
模型Model负责维护组件的状态,在视图View中显示模型所代表的数据,控制器
Controller执行事件处理,改变和查看数据。采用MVC模式好处是数据的表示、存储和控
制分开,各个部分互相协作,共同完成一个任务
作者简介:郑三红(1971—) 男,湖南新田人,硕士研究生。研究方向为业务流程管理,设计模式,
J2EE,UML。
控 制
器
模型
视图