领先一步
VMware 提供培训和认证,以加速你的进步。
了解更多这篇文章是由社区成员 Matti Tahvonen (@MattiTahvonen) 客座撰写,他在 Vaadin Ltd 担任开发者倡导者,该公司最初开发了 Vaadin Framework,并为其提供商业服务和扩展。
用于 Vaadin 的 Spring 集成库自 5 月以来一直处于 Beta 阶段,并且已被多个生产应用程序使用。 今天,我们很自豪地宣布 Beta 标志已删除,并且稳定的 1.0.0 版本已发布。
Vaadin 是一个基于组件的 Web UI 框架,你的应用程序状态和逻辑位于 Java 应用程序服务器的内存中。 这种架构使你能够充分利用 JVM 和 Spring 等框架的功能到 UI 代码中,尤其是在数据旁边保留 UI 逻辑的巨大优势。 由于强大的抽象和基于组件的 API(类似于桌面 UI 库),你几乎可以忘记你实际上是在使用 Web 应用程序,而专注于你的领域问题。
Vaadin 不是适用于每个网站的工具,但是如果你正在构建需要不仅仅是一些简单表单的单页 Web 应用程序,那么你绝对应该在你的工具箱中拥有 Vaadin。 如果你是 Vaadin 的新手,并且想知道它背后的工作原理,请查看 介绍页面 以获取更详细的说明。
作为一个纯 Java 库,Vaadin 一直很容易适应基于 Spring 的软件栈。 借助最近发布的官方 Vaadin Spring 集成库,它变得更加容易。 只需使用注释标记你的 UI 对象,它们就会成为 Spring 管理的 bean,从而可以轻松使用 IoC 技术,并将基于 Spring Data 的服务直接连接到你的 UI 类。 Vaadin Spring 自然支持 Spring Boot,但也可以在旧式的 Spring 部署中使用。
为了轻松开始新的 Spring + Vaadin 项目,start.spring.io 服务支持 Vaadin Spring 集成库。 只需在那里点击 Vaadin 复选框,然后将生成的项目导入到你喜欢的 IDE 中。 尝试以下代码片段,以构建一个简单的基于 Spring Boot 的 hello world 应用程序
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
@Service
public static class MyService {
public String sayHi() {
return "Hello Spring!";
}
}
@Theme("valo")
@SpringUI(path = "")
public static class VaadinUI extends UI {
@Autowired
MyService myService;
@Override
protected void init(VaadinRequest request) {
Button button = new Button("Greet service");
button.addClickListener(e -> Notification.show(myService.sayHi()));
setContent(button);
}
}
}
有关如何继续使用基于 Spring + Vaadin 的软件策略的更多提示,请参阅 vaadin.com/spring 和我们最近的 介绍性网络研讨会。