我是靠谱客的博主 无语机器猫,最近开发中收集的这篇文章主要介绍VAADIN应用程序,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述




如该图所示,使用 Vaadin 开发的应用程序实际上是运行在容器中的 Java Servlet,应用程序的入口点是 Application 类,它会创建并且管理所有必须的 UI 组件。用户与 UI 组件的交互由事件监听器处理,应用程序所需的数据直接被绑定在 UI 组件上,应用程序的整体外观则是由 CSS 编写的主题来控制。在 Vaadin 应用程序中,图标、图片和其他可被用户下载的文件被当作资源 (resources) 来处理,这些资源可以是应用程序内部的,也可以是来自外部的。在程序运行时 ,Vaadin 框架会将同一个应用中的所有的 Http 请求都关联到同一个 session 会话里 , 一个 application 类的实例实际上是一个 session 对象。因此开发人员可以像开发桌面程序一样来开发 Vaadin Web 应用程序,无需考虑 Http 会话管理等通常需要在 Web 应用开发中关注的问题

       在 Vaadin 应用程序中必须定义一个 Application 类来作为程序的入口,这个类需要继承 Vaadin 的抽象类 com.Vaadin.Application并且实现init()方法。当程序运行时,Vaadin 会执行 init() 方法中的代码来生成各个 UI 组件。除此之外,Application 类还提供了应用程序窗口管理,执行控制和主题选择的功能。在初始化 UI 组件时,至少需要建立一个主窗口 (Main Window), 这个主窗口是 Web 浏览器中最高层的 UI 组件 , 其他所有的 UI 部件都包含在主窗口中。由于 Vaadin 应用是一个单页面的 Web 应用程序 , 在整个应用的生命周期中 , 主窗口不会被再次装载 , 所以它和桌面应用程序的主窗口非常类似,是所有其他 UI 组件的容器。如代码清单所示,可以使用 Application 类的 setMainWindow()方法来为应用程序添加主窗口。

代码清单-1
package com.example.hellovaadin;

import com.vaadin.Application;
import com.vaadin.ui.*;
import com.vaadin.ui.LoginForm.LoginEvent;
import java.io.*;
import java.util.Locale;


public class HellovaadinApplication extends Application {
       @Override
       public void init() {
            
              final GridLayout layout = new GridLayout(1, 1);
              layout.setMargin(true);
               LoginForm login = new LoginForm();
               login.setWidth("100%");
               login.setHeight("300px");
               login.setLoginButtonCaption("登录");
               login.setUsernameCaption("用户名:");
               login.setPasswordCaption("密       码");
               login.addListener(new LoginForm.LoginListener() {
                       public void onLogin(LoginEvent event) {
                              getMainWindow().showNotification(
                                               "New Login",
                                               "Username: " + event.getLoginParameter("username")
                                                               + ", password: "
                                                               + event.getLoginParameter("password"));
                       }
               });
               Window mainWindow = new Window("登录窗口",layout);
              layout.addComponent(login);
              layout.setComponentAlignment(login, Alignment.TOP_CENTER);
              setMainWindow(mainWindow);
     
       }

}

       在创建了主窗口之后,可以创建其他的 UI 组件并通过 addComponent方法将它们添加到主窗口中 , 也可以使用 addWindow方法在主窗口中添加子窗口对象。除了 UI 组件外,Vaadin 还提供了多种 Layout 对象用来控制程序的 UI 布局,结合使用各种 Layout 布局,界面 UI 控件以及 Theme 主题,可以使用 Vaadin 开发出外形绚丽并且功能接近桌面程序的 Web 应用。

最后

以上就是无语机器猫为你收集整理的VAADIN应用程序的全部内容,希望文章能够帮你解决VAADIN应用程序所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部