作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
<分区>
在我们独立的 Spring 3.1 应用程序中,我们严格地将业务逻辑与监控 Swing View 分开。 View 通过实现 EventListener
接口(interface)获取信息。
要禁用 UI,“删除”UI Bean 上的所有 @Services
就足够了,这样实现此 EventListner 的 UI 类就不会被业务逻辑注入(inject)。
但是如何做到这一点呢?
这个例子给出了我们类的一个小概览:
@Service
public class UI extends JFrame implements EventListener {
@PostConstruct
public void setup() {
// Do all the Swing stuff
setVisible(true);
}
@Override
public void onBusinessLogicUpdate(final State state) {
// Show the state on the ui
}
}
@Service
public class Businesslogic {
@Autowired
public List<EventListener> eventListeners;
public void startCalculation() {
do {
// calculate ...
for (final EventListener listener : this.eventListeners) {
eventlistener.onBusinessLogicUpdate(currentState);
}
}
while(/* do some times */);
}
}
public class Starter {
public static void main(final String[] args) {
final ApplicationContext context = // ...;
if(uiShouldBedisabled(args)) {
// remove the UI Service Bean
}
context.getBean(Businesslogic.class).startCalculation();
}
}
我是一名优秀的程序员,十分优秀!