我当前的应用程序有一个JFrame,其中大约15个Action存储为JFrame中的字段。每个Action都是一个匿名类,其中一些Action很长。将Action分解成它们自己的类(可能在称为Action的子包中)是否很常见?如果不是,通常如何控制这种复杂性?谢谢 最佳答案 如果您的操作可能是可重用的(例如,从键盘快捷键、其他菜单、其他对话框等),尤其是如果它们可以直接在底层模型(而不是UI)上工作,那么它通常最好不要将它们作为匿名类。相反,创建一个单独的包,并为每个包创建类。通常,不直接实例化这些也是有意义的,而是使用某种管理器来
我的JMenuBar上的ActionListener需要一些帮助。没有错误;但是每次我单击JMenuItem时,它都会触发与JMenuItem关联的所有操作。我的问题是:我在我的ActionListener代码中做得对吗?我不太确定我的ActionListener类。我试图将我的ActionListener与我的Button逻辑分开。如果有人对我可能做错的地方有任何想法,请指出。这是我的代码:packageMenuBar;importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;publicclassSimpleMenuBa
我的初始化程序中有以下代码:publicclassAppInitializerextendsAbstractAnnotationConfigDispatcherServletInitializer{@OverrideprotectedFilter[]getServletFilters(){DelegatingFilterProxyshiroFilter=newDelegatingFilterProxy("shiroFilter");shiroFilter.setTargetFilterLifecycle(true);returnnewFilter[]{newCorsFilter(),s
我正在使用Struts2。我有一个对话框,其中包含通过“search_users”操作更新的人员列表。在此列表旁边,我有一个表单,您可以使用该表单在提交表单时通过调用“add_user”操作来添加另一个人。我想做的是,一旦执行了add_user操作,列表就会使用“search_user”操作进行更新。我尝试在struts.xml中使用结果类型“重定向”,如下所示:list.jspsearch_users但这行不通。我究竟做错了什么?是否有我不知道的应该添加到struts.xml文件的内容?这是我得到的错误信息:"Causedby:Thereisnoresulttypedefinedfo
我们正在重新设计我们的产品以删除SpringSecurity中默认的“anonymousUser”行为,并希望锁定除少数端点之外的所有URL(通过过滤器安全性)。我们想不通的是如何指定“锁定除X、Y和Z之外的所有内容”我们的安全设置基本上归结为以下内容:@ConfigurationpublicclassSecurityConfigextendsWebSecurityConfigurerAdapter{@Overrideprotectedvoidconfigure(HttpSecurityhttp)throwsException{http//disableanonymoususers.a
我参与了一个重构JSF实现的项目。现有代码未遵循正确的JSF标准。为了实现这一目标,我正在学习JSF中的所有概念(我已经亲body验了JSF)。具体来说,我想问一下我的想法。在MVC模式中,JSF中的模型组件是什么?是托管Bean吗?在操作方法中编写业务逻辑是个好主意吗?我见过数百行写在Action方法中的行。您认为我们可以在getter方法中编写任何逻辑吗?在JSF生命周期中调用了多少次getter或setter。编写faces-config.xml的常规方法是什么。我在一份文档中读到,它说将托管bean声明和该bean的导航案例一起编写是一种很好的做法。它将更具可读性。编写阶段监听
我正在尝试使用Maven在我的springweb应用程序上运行一些单元测试。该应用程序安装并运行良好,它生成一个可部署的war文件一切正常(全部使用Maven)。我的测试类(位于src/test/java):@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations={"file:C:/myProjects/myWebapp/src/main/webapp/WEB-INF/applicationContext-test.xml"})@TransactionalpublicclassMyTest{...但是
我可以在许多网站上了解到StrutsAction类不是线程安全的。我无法理解为什么会这样。我还读了一本书,上面写着“StrutsAction类被缓存并重用以提高性能以必须以线程安全的方式实现操作类为代价的优化”缓存Action类和线程安全有什么关系?. 最佳答案 Howiscachingactionclassesandbeingthreadsaferelated?如果您缓存并重用一个类的实例,允许多个线程同时访问同一个实例,那么该类本质上不是线程安全的*。如果要在类上放置可变实例或静态字段,并发下的结果将是意想不到的和有问题的。另一
显然,Java没有委托(delegate)或函数作为第一类值,而是使用接口(interface),但最接近Func或Action.NET委托(delegate)的接口(interface)是什么?有Runnable和Callable,但仅限于不带参数的类型。由于Java不能有具有相同名称和不同数量的泛型类型参数的重载类型,我理解不能有单一的共享接口(interface)名称,但可以有Runnable1、Runnable2等等。这种编程风格是否没有在Java中使用,或者我是否缺少任何现有接口(interface)? 最佳答案 我对.N
手头的任务是创建我的JavaWeb应用程序的一部分,这将使我能够以组合方式轻松执行小块代码。手头的任务是允许用户以任何顺序编写“Action”。我遇到的困难是将参数传递给我的操作。一切都从Action界面开始:publicinterfaceAction{voidresolve(Contextcontext);}当Action被解析时,它的代码被执行。代码可以是任何东西:调用Java中的方法,执行一些Javascript...在这里,“上下文”对我来说是个问题。每个Action都在特定上下文中执行。这个想法是创建Action的用户可以指定从概念中检索哪个对象,例如正在解析当前Action