Tag: 模型 视图 控制器

分离模型,视图和控制器的最佳方法

我正在考虑将模型视图和Controller-for Java分离并使用Eclipse的最佳方法,如果它有任何区别的话。 我曾经把每个类型的MVC分别放在自己的包中,但我开始认为这不是最好的方法: com.company.client(controler) com.company.client.model com.company.client.view com.company.another(controler) com.company.another.model com.company.another.view com.company.yetAnother(controler) com.company.yetAnother.model com.company.yetAnother.view (假设有很多不同的包,每个包都有自己的视图和模型) 我考虑过使用: com.company.client com.company.another com.company.yetAnother com.company.model.client com.company.model.another com.company.model.yetAnother com.company.view.client com.company.view.another com.company.view.yetAnother 我甚至考虑过将控制器,模型和视图放在不同的项目中。 也许它会更加模块化,我会更确定视图不使用控制器,例如(因为控制器项目将包括视图,但不是相反)。 那么分离M,V和C的最佳方法是什么? (考虑网络和桌面应用,而不仅仅是网络)

使用Scene Builder在JavaFX中创建MVC模式

我是JavaFX的新手,并且在我目前的设置下努力创建一个合适的MVC架构。 我使用Scene Builder将UI单击在一起,并指定了一个Controller类。 启动: public class Portal extends Application { public static void main(String[] args) { launch(args); } @Override public void start(Stage stage) throws Exception { Parent root = FXMLLoader.load(getClass().getResource(“PortalUI.fxml”)); stage.setTitle(“Portal”); stage.setScene(new Scene(root)); stage.show(); } } Controller类包含其余代码。 public class AccommodationPortalView implements Initializable { @Override public void initialize(URL url, ResourceBundle resources) { // Work here. } […]

JTextField输入无法更新MVC中TextView的输出

我正在研究高级Java并试图编写一个利用MVC设计模式的程序。 程序需要绘制一个字符串,该字符串可以由用户在JTextField的输入进行修改。 用户还可以分别通过JComboBox和JSpinner调整文本的颜色和字体大小。 这是我到目前为止: public class MVCDemo extends JApplet { private JButton jBtnController = new JButton(“Show Controller”); private JButton jBtnView = new JButton(“Show View”); private TextModel model = new TextModel(); //constructor public MVCDemo(){ //set layout and add buttons setLayout(new FlowLayout()); add(jBtnController); add(jBtnView); jBtnController.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e){ JFrame frame = new JFrame(“Controllor”); TextController […]

java + swing + mvc:如何使用多个控件进行接口的模型?

我有这个我正在研究的S​​wing应用程序,它有一对JSliders和JTextFields,它们都显示和控制两个数字的值。 现在,我将各种各样的东西混合起来使其工作,拦截变更事件并更新显示。 但是我想更好的方法是制作一个具有两个数字的模型,并以某种方式将此模型链接到我的GUI视图。 我知道如何制作一个模型,但我对如何将其链接到我的GUI视图有点遗失…任何建议? 更新:我的模型准备就绪+包括触发属性更改。 我想我想使用某种数据绑定方法(例如JGoodies绑定),但我不确定如何… JGoodies Binding不支持滑块。 编辑:还要注意,当滑块改变位置时,文本字段应该改变它的值; 当文本字段改变值时,滑块应改变位置; 当模型更改值时,文本字段+滑块都应更新。

图像无法更新其他组件(MVC)

import java.awt.event.ActionListener; import java.util.*; import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.awt.event.ActionEvent; import java.awt.event.AdjustmentListener; import java.awt.event.AdjustmentEvent; 我有几个其他框架(两个只是在打孔数字,另一个也是滚动条)。 我可以使用其他组件来更新此视图(这基本上显示基于温标的一盒图像)。 同样,我可以从此视图更新其他组件。 然而 (编辑),酒吧确实移动,但图像保持不变….任何人都可以看到一个错误? 感谢您对此的任何意见/谢谢!

正确设计实体类。 需要建议

例如,我有实体类User : public class User { private long id; private String name; // setters and getters } 接下来,我添加新的实体类: Comment public class Comment { private long id; private String comment; // setters and getters } 接下来,我可以添加越来越多的实体类。 而且,此时我想:我可以/必须在逻辑结构中绑定/连接我的实体类还是没有? 我的意思是说? 我试着解释一下: 第1点:所有这些类: User , Comment等 – POJO 。 想法1:需要通过接口或抽象类对这些类进行逻辑绑定。 第2点:我看到,所有实体类都有相同的方法: getId和setId() 。 想法2:需要避免在所有类中声明此方法。 我的解决方案 添加接口BaseEntity : public interface […]

ActionListener在Java GUI App的控制器中是个好主意吗?

我不想尝试遵循MVC模式。 在互联网上,我看到最着名的例子是计算器,例如这里 。 我开始使用这种MVC模式的实现。 但是现在我对控制器中的动作侦听器有些疑虑,因为它们倾向于移动查看。 有很多变化与视图相关的主要原因 – 字体,颜色,边框等。此外还有仅仅修改视图的actionlisteners! 因此,在控制器中实现这样的actionlistener要困难得多(与视图中的简单内部匿名类相比)。 此外,它需要从控制器访问许多视图元素。 我有一个想法是在控制器和一些视图中保留一些actionlisteners,但它可能导致将来混乱。 所以我想听听其他人的想法。 PS这个问题与许多ActionListener的MVC模式不重复

关于使用MVC开发桌面应用程序的推荐书籍

我正在寻找关于桌面上有关MVC的书籍的建议。 如果他们使用Java,那就是奖金。 一些背景:我正在用Java编写桌面应用程序。 它是一个音频应用程序,具有许多视图和一个称为库的中央模型,其中包含播放列表,效果列表和用于组织它们的文件夹结构。 在这个应用程序中,我想为各种用户操作提供菜单,上下文菜单和拖放支持。 我一直在努力使用MVC来实现这一目标。 我从主类中的所有逻辑/控制器开始,但已经开始将它们分离到自己的类中。 现在我需要开始使用侦听器和观察器来处理视图和控制器之间的消息。 这导致我创建了许多接口,并在几个地方通过我的监听器循环以触发各种消息。 但是循环代码不断重复(而不是DRY),所以我假设现在我应该创建不同类型的Event类,在我的视图中创建这些事件,并在视图中使用单个方法将其发送给各种侦听器。 更新: Arguabley它应该没什么关系,但我使用的是SWT,而不是Swing。

Java Swing中的控制器是什么?

我想以有意义的方式使用Swing将MVC设计应用于我的Java应用程序。 因此我的问题是,如何在Java Swing中构建控制器? 我有两个选择: 每个组件侦听器都是一个自己的类,作为控制器包的一部分 每个组件侦听器都是视图包中的匿名类,它使用控制器方法将其调用委托给一个类。 两者都有可能吗? 这是一个偏好问题,还是明确界定?

任何人都可以推荐基于MVC的Java Web框架并支持REST吗?

我们希望在Web应用程序中托管Java域模型(使用DDD编写)。 理想情况下,我想支持RESTful资源和请求,只有一个站点支持用户和REST API。 理想情况下,相同的URL可以用于最终用户和给定function的RESTful API(HTTP内容类型/协商指定差异)。 我在Ruby on Rails和Asp.mvc中做过类似的应用程序,但没有经验在Java中做过这样的事情。 任何人都有从哪里开始的经验或建议? (谷歌搜索表明Spring v3可能是一个答案,任何人都对Spring 3有任何想法?)