English 中文(简体)
Java Swing MVC的建筑
原标题:Java Swing MVC architecture
  • 时间:2011-11-01 22:36:44
  •  标签:
  • java
  • swing

• 如何组织“Java Swing”申请,以实现“MVC”结构?

最佳回答

见:

问题回答

i) 分类:

  • object classes: to represent objects
  • functionality classes: to provide functionality. for instance, methods to read/write files or methods to make calculations possibly using some object classes
  • and GUI classes (using Swing) which will be what the user will see. these classes will do what the functionality classes provide.

您的项目必须至少由三个实体组成:model>、>。 你的模型代表了你的数据,认为你的数据和控制者既能产生观点,又能产生控制作用。

让我们 su开一个 rec子,希望建立一个全球倡议,在用户对面进行分类时显示试金的面积。

您的模型必须延伸到Observable等舱位,这样,你就把舱门标为你的<编码>MCV 架构的模版。

public class Square extends Observable {ecc....}

when you set the side, you have to set the state of the model as changed and notify observers which are listening on your model, such as:

public void setSide(double side) {
  this.side=side;
  setChanged();
  notifyObservers();
}

PS: setChanged() and notifyObservers() are provided by Observable class.

您, 观点必须执行<条码>观察员<>/代码>接口,以便你作为模型变化的倾听者加以标示。 执行 页: 1

public class Square_View implements Observer {
    JLabel area;
    ......
    @Overried
    public void update (Observable o, Object arg1) {
        Square square=(Square)o;
        area.setText(square.getArea());
    }

Well, as soon as your square s side changes, a notification is triggered and update method is invoked.

如今,MVC结构的思维方式是:

public class MyProgram extends JFrame {
      ... somewhere in your class
      Square s=new Square();
      Square_View sv=new Square_View();
      s.addObserver(sv);
}

正如我前面说过的那样,你既树立了榜样,又把观点登记为你的榜样。





相关问题
Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Logging a global ID in multiple components

I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...

Java Library Size

If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...

How to get the Array Class for a given Class in Java?

I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....

SQLite , Derby vs file system

I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...

热门标签